七个很有用的 JavaScript 技巧

2023年 9月 7日 89.6k 0

1.用“fill”初始化数组

初始化一个固定长度的数组,每一项都是“fatfish”。

// ❌
let array = []
const len = 100
for(let i = 0; i < len; i++){
  array[i] = 'fatfish'
}

其实,使用 fill 就很简单了。

// ✅
let array = Array(100).fill('fatfish')

2. 使用对象代替“switch”

我们经常使用 switch 来处理不同的事情,但是你有没有想过使用对象来大大简化你的代码?(它适用于一些简单的场景)

// ❌
const n = 1
let result
switch (n) {
  case 1:
    result = 'res-1'
    break
  case 2:
    result = 'res-2'
    break
  case 3:
    result = 'res-3'
    break  
  // ...There are a lot more
}

你只需要使用一个对象来实现你的目标。

// ✅
const n = 1
const nMap = {
  1: 'res-1',
  2: 'res-2',
  3: 'res-3'
}
const result = nMap[ n ]

3. 使用“? ……:……”而不是“if… else…”

很多时候简单的条件判断并不需要使用“if”。

// ❌
const n = 18
let result
if (n % 2 === 0) {
  result = 'even number'
} else {
  result = 'odd number'
}

只需使用三元表达式即可简化代码。

// ✅
const n = 18
let result = n % 2 === 0 ? 'even number' : 'odd number'

4.使用“includes”方法而不是多个“if”

你经常写这样的代码吗?多个条件可以触发一个逻辑。随着你的业务增长,你可能需要写更多的“||”,这很糟糕。

// ❌
const n = 1
if (n === 1 || n === 2 || n === 3 || n === 4 || n === 5) {
  // ...
}

使用包含使您的代码更加易于维护。

// ✅
const n = 1
const conditions = [ 1, 2, 3, 4, 5 ] // You just need to add new numbers here
if (conditions.includes(n)) {
  // ...
}

5.使用ES6函数的默认参数

为什么不使用默认参数呢?

// ❌
const func = (name) => {
  name = name || 'fatfish'
  console.log(name)
}
// ✅
const func = (name = 'fatfish') => {
  console.log(name)
}

6. 使用“+”将字符串转换为数字

您可能正在使用 Number() 和 parseInt() 将字符串转换为数字。

// ❌
let str = '123'
let num = Number(str) // 123
let num2 = parseInt(str) // 123

实际上使用“+”更容易。

// ✅
let str = '123'
let num = +str // 123

7. 使用“JSON.stringify”输出更漂亮的信息

这是一个深度嵌套的对象,您可以使用 console.log 来打印它。

// ❌
const bigObj = {
  name: 'fatfish',
  obj: {
    name: 'fatfish',
    obj: {
      name: 'fatfish',
      obj: {
        name: 'fatfish',
        obj: {
          name: 'fatfish',
          // ...
        }
      }
    }
  }
}
console.log(bigObj)

但这样不方便查看具体属性,我们需要手动展开各个级别才能看到数据。

// ✅
const bigObj = {
  name: 'fatfish',
  obj: {
    name: 'fatfish',
    obj: {
      name: 'fatfish',
      obj: {
        name: 'fatfish',
        obj: {
          name: 'fatfish',
          // ...
        }
      }
    }
  }
}
console.log(JSON.stringify(bigObj, null, 2))

这真的非常方便和直观。

相关文章

JavaScript2024新功能:Object.groupBy、正则表达式v标志
PHP trim 函数对多字节字符的使用和限制
新函数 json_validate() 、randomizer 类扩展…20 个PHP 8.3 新特性全面解析
使用HTMX为WordPress增效:如何在不使用复杂框架的情况下增强平台功能
为React 19做准备:WordPress 6.6用户指南
如何删除WordPress中的所有评论

发布评论