Цель этой статьи
- 😃 Как сделать ваш код более элегантным
- 🥰 Сделайте код более читабельным и интуитивно понятным
- 👍 Избегайте бесполезного кода и уменьшайте его количество
- 🐂🔥 Когда ваш коллега видит ваш код, это весело, звоните эксперту
Используйте && вместо if
const doSometings = () => {}
const isTrue = true
let temp = ''
if(isTrue){
doSometings()
temp = 'isTrue'
}
// 替代方案
isTrue && this.doSometings()
isTrue && (temp = 'isTrue')
переключаться вместо if
const temp = 1
if(temp === 1){
// ...
}
if(temp === 2){
// ...
}
// 替代方案
switch(true){
case temp === 1:
// ...
break;
case temp === 2:
// ...
break;
default:
// ...
break;
}
[] или {} => null (никогда не доверяйте данным, возвращаемым серверной частью)
const { data } = await getApiData()
// 如果data类型是一个数组
console.log(data[0]) // 如果data返回了个null,会报错
// 如果data类型是一个对象
console.log(data.a) // 如果data返回了个null,会报错
// 可以写成下面这样
console.log((data || [])[0])
console.log((data || {}).a)
// 此时就算data返回了null,也只会提示undefined,并不会报错阻塞代码
сгенерировать массив длины N
// 生成长度为100的数组
const arrN = [...Array(100).keys()]
// [0,1,2,3,...,99]
Сгенерировать массив A-Z
const AZCodeArr = [...Array(91).keys()].filter(i => i > 64).map(i => String.fromCharCode(i))
//['A','B','C','D'...]
возьми последнюю цифру
const num = 12345
const num2 = '54321'
console.log(num%10) // 5
console.log(num2%10) // 1 当然隐式转换也是可以的
Округление
const num = 123.456
console.log(num | 0) // 123
Напишите промежуточное ПО для управления вашим служебным классом
// index.js
[
'utilA',
'utilB'
].forEach(m => {
Object.assign(exports, require(`./lib/${m}`))
})
exports.lodash = require('lodash')
// 外部引用
const { utilA, utilB, lodash : _ } = require('utils')
Универсальный редуктор
накапливать
const arr = [
{num:1},
{num:2},
{num:3}
]
console.log(arr.reduce((p,n) => p + n.num, 0)) // 6
дедупликация
// 去除id重复的对象
const arr = [
{
id:'1',
msg:''
},
{
id:'2',
msg:''
},
{
id:'1',
msg:''
}
]
console.log(arr.reduce((p,n) => {
if(!p.find(i => i.id === n.id)) p.push(n)
return p
},[])) // [{id:'1',msg:''},{id:'2',msg:''}]
конец
Эта статья всегда будет обновляться!
⏲⏲⏲ Время обновления: 2021-12-15
👍👍👍 Если вы найдете это полезным, вы можете собрать его и использовать! ! !
❤️❤️❤️ Спасибо за прочтение, друзья, которые считают, что ставить лайки — это хорошо! ! !