1、es6之扩展运算符 三个点(…):
(1)数组合并
aaa: [1,1,2],
bbb: [2,4,3]
console.log([...this.aaa, ...this.bbb])
//[1, 1, 2, 2, 4, 3]
(2)对象名去重复拼接,
aaa: {a: 1, b: 2},
bbb: {a: 3, c: 2}
console.log({...this.aaa, ...this.bbb})
//{a: 3, b: 2, c: 2}
//可以看到重复对象名会被后者覆盖
(3)有意思的是
[...'hello']
// ["h", "e", "l", "l", "o"]
2、字符串拼接,使用反单引号 `${对象}` ,不再需要用传统的类似'a'+'b'+'c'
goodsCategoryName: '访客记录'
console.log(`aa${goodsCategoryName}bb`)
//aa访客记录bb
3、数组去重
aaa: [4,2,3,1,2,1,4,4]
console.log(new Set(this.aaa))
//Set {_c: Set(4)}
//_c: Set(4) {4, 2, 3, 1}
//size: (...)
//__proto__: Set
//可以看出来返回的是个对象,需要返回数组怎么办呢
//用上Array.from就能转为数组
Array.from(new Set(this.aaa))
//[4, 2, 3, 1]
4、参数默认值
function f(a, b='leo'){
console.log(a, b);
}
f('hi'); // hi leo
f('hi', 'jack'); // hi jack
f('hi', ''); // hi leo