解构
对象结构
let a = {'b':'bb','c':'cc'};
//对象结构,根据 key 值匹配
let {b,c} = a;
console.log(b) // 'cc'
数组结构
let arr = ['a','b','c'];
//数组结构, 根据 索引 匹配
let [one,two,thrre] = arr
consolelog(three);//'c'
合并运算符
对象合并
let a = 'aa';
let b = {
'bb': 'bbb'
};
let c = {
'cc': 'ccc'
}
let d = {
a,
b,
...c,
...{'d': 'ddd'} //自定义添加对象
}
console.log(d); //{a: 'aa', b: {…}, cc: 'ccc', d: 'ddd'}
数组合并
let a = 'aa'
let b = [1, 2, 3]
let c = ['a', 'b', 'c']
let d = [
a,
b,
...c,
...['ssss'] // ...[自定义元素]
]
console.log(d); //['aa', Array(3), 'a', 'b', 'c', 'ssss']
展开运算符
展开运算符可以理解为就是 Function 中的 arguments, 都属于为数组
至于 数组 和 为数组的区别 请看文章数组和为数组的区别_aaassddd_a的博客-优快云博客
let a = 'aa';
let b = [1, 2, 3];
let c = {
'c': 'cc'
};
let d = function () {}
foo(a, b, c, d)
function foo(...arg) {
console.log(arg);
}
打印结果