JS KitKat проституция солянка (обновление)⏲👇

внешний интерфейс JavaScript
JS KitKat проституция солянка (обновление)⏲👇

Цель этой статьи

  • 😃 Как сделать ваш код более элегантным
  • 🥰 Сделайте код более читабельным и интуитивно понятным
  • 👍 Избегайте бесполезного кода и уменьшайте его количество
  • 🐂🔥 Когда ваш коллега видит ваш код, это весело, звоните эксперту

Используйте && вместо 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

Напишите промежуточное ПО для управления вашим служебным классом

image.png

// 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

👍👍👍 Если вы найдете это полезным, вы можете собрать его и использовать! ! !

❤️❤️❤️ Спасибо за прочтение, друзья, которые считают, что ставить лайки — это хорошо! ! !