1,解构赋值
let obj = {
a: 1,
b: 2,
c: 3
}
const { a:a1,b:b1,c:c1} = obj || {};//防止对象为空
console.log(a1,b1,c1);
2,合并数组(扩展运算符)
const a = [1,2,3,4,5]
const b = [4,5,6,7,8]
const c = [...new Set([...a,...b])]//数组合并一定要去重
3,字符串拼接
const name1 = "小明"
const score = 59
const result = `${name1}${score > 60 ? '考试成绩及格':'成绩不及格'}`//模板字符串可以写表达式
console.log(result);
4,获取对象属性(可选链式操作符)
const person ={
name1:"张三",
age:27
}
const name1 = person && person.name
const name2 = person?.name1//注意可选链式操作符不可赋值
console.log(name2);
5,添加对象属性值
let person ={};
let index = 4
person[`name${index}`] = '张三'//对象属性名可以写表达式
console.log(person);
6,输入框非空判断(空值合并运算符)
let value = 1;
if((value??'') !== ''){
console.log(1);
}
7,数组includes方法实现if条件判断
const type = 0;
const condition = [1,2,3,4,5]
if(condition.includes(type)){
console.log(1);
}
8,数组扁平化(object.values(),flat(),Initity)
const deps = {
'我':[1,2,3],
'是':[4,5,6],
'猪':[7,8,9]
}
const dataArr = Object.values(deps).flat(Infinity)
console.log(dataArr);
Object.values()方法返回一个给定对象自身的所有可枚举属性值的数组,
值的顺序与使用for…in循环的顺序相同
flat() 方法会按照一个可指定的深度递归遍历数组,并将所有元素与遍历到的子数组中的元素合并为一个
新数组返回