ES6 ...扩展运算符

数组合并

//es5
let b1 = ['平凡的世界第一部', '平凡的世界第二部', '平凡的世界第三部']
let b2 = ['人生']
let b3 = b1.concat(b2);
//console.log(b3) // (4) ["平凡的世界第一部", "平凡的世界第二部", "平凡的世界第三部", "人生"]

//es6
let b4 = [...b1, ...b2];
b4[3] = '月夜静悄悄'
console.log(b4) //(4) ["平凡的世界第一部", "平凡的世界第二部", "平凡的世界第三部", "月夜静悄悄"]

对象合并

let obj1 = {
    b1: '平凡的世界第一部',
    b2: '平凡的世界第二部',
    b3:'平凡的世界第三部',
}
let obj2 = {
    ...obj1,
    b4:'人生',
}
console.log(obj2) //{b1: "平凡的世界第一部", b2: "平凡的世界第二部", b3: "平凡的世界第三部", b4: "人生"}

//如后者与前者相同,后者覆盖前者
let obj1 = {
    b1: '平凡的世界第一部',
    b2: '平凡的世界第二部',
    b3: '平凡的世界第三部',
    b4: '月夜静悄悄',
}
let obj2 = {
    ...obj1,
    b4: '月夜静悄悄11111',
    b5: '人生',
}
console.log(obj2) //{b1: "平凡的世界第一部", b2: "平凡的世界第二部", b3: "平凡的世界第三部", b4: "月夜静悄悄11111", b5: "人生"}

let obj = { name: 'lily', }
let obj1 = { job: '前端', }
let obj2 = { sex: 1, }
let obj5 = { ...obj, ...obj1, ...obj2 }
console.log(obj5) //{name: "lily", job: "前端", sex: 1}

//与Object.assign用法相同 Object.assign(target, ...sources)
let obj4 = Object.assign(obj, obj1, obj2);
console.log(obj4) //{name: "lily", job: "前端", sex: 1}
console.log(obj) //{name: "lily", job: "前端", sex: 1}  /**这里值得注意的是目标对象也会随之改变 */
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值