一些代码块的简洁方式
每天敲敲敲,谁不想知道代码高效、简洁、易懂。在平时项目中也记录了一些简洁的代码块,在此总结一下。
通过条件判断给变量赋值布尔值
// 一般
if(a === 'a'){
b = true
}else{
b = false
}
// 简洁
b = a === 'a'
在if中判断数组长度不为零
// 一般
if(arr.length !== 0){}
// 简洁
if(arr.length){}
字符串拼接使用${}
let person = {
name:'xiaoming',
age:18
}
// 一般
function sayHi(obj){
console.log('大家好,我叫' + person.name = ',我今年' + person.age + '了')
}
// 简洁
function sayHi(obj){
console.log(`大家好,我叫${person.name},今年${person.age}岁了`);
}
使用Object.values快速获取对象键值
let obj = {a:1,b:2};
// 一般
let values = [];
for(key in obj){
values.push(obj[key])
}
// 简洁
let values = Object.values(obj); // [1,2]
使用Object.keys快速获取对象键名
let obj = {a:1,b:2};
// 一般
let keys= [];
for(value in obj){
keys.push(value)
}
// 简洁
let values = Object.keys(obj); // ['a','b']
解构数组进行变量值的替换
// 一般
let a = 1,b = 2;
let temp;
temp = a ; a = b ; b = temp;
// 简洁
let a = 1,b = 2;
[a,b] = [b,a]
&&短路符判断依赖的键是否存在防止报错’xxx of undfined’
let person = {
name:"xiaoming",
age:18,
children:{
name:'xiaoxiang'
}
}
let childrenNmae = person.children && person.children.name