暗夜模式
常见代码技巧
记录一些常见的 JavaScript 代码优化技巧
1.可省略的比较语句
js
var isFind = false
// 优化前
if (isFind === true) {
console.log('todo A')
} else {
console.log('todo B')
}
// 优化后
if (isFind) {
console.log('todo A')
} else {
console.log('todo B')
}
js
var user = null
// 优化前
if (user === null) {
console.log('todo A')
}
// 优化后
if (!user) {
console.log('todo A')
}
2.将string类型转换为number类型
js
var page = '10'
// 优化前
console.log(Number(page))
// 优化后
var page = '10'
console.log(+page)
3.转换为boolean类型
js
var x = '???' // x为任意值
// 优化前
console.log(Boolean(x))
// 优化后
console.log(!!x)
4.设置默认值
js
var limit // limit可能为null、undefined、大于0的数字
// 优化前
if (limit === null || limit === undefined) {
limit = 5
}
// 优化后
limit = limit || 5
5.安全读取对象属性
js
var user = {
name: 'ABC',
addr: {
province: '浙江',
city: '杭州',
},
}
// 优化前
if (user) {
if (user.addr) {
console.log(user.addr.province)
}
}
// 优化后
user && user.addr && console.log(user.addr.province) // 1
console.log(user && user.addr && user.addr.province) // 2