JavaScript的解构赋值应用

数组的解构赋值

数组的赋值 

let [a,b,c] = [1,2,3];
console.log(a); // 1
console.log(b); // 2
console.log(c); // 3
var [a="随便设置的默认值",b = 888,c] = [,2,3];
console.log(a); // "随便设置的默认值"
console.log(b); // 2
console.log(c); // 3

数组的拼接

var a = [1,2,3];
var b = [4];
var c = [...a, ...b];
console.log(c); // [1,2,3,4];

数组的克隆

let arr1 = [1,2,3,4,5]
let arr2= [...arr1]

 仅复制部分元素,涉及关键字 rest(剩余参数)的用法 

const array = [1,2,3,4]
const [a, ...rest] = array
console.log(a) // 1
console.log(rest) // [2, 3, 4]

对象的解构赋值

对象的赋值

var {name1, age} = {name: "dada", age: 20};
console.log(name1); // undefined
console.log(age);  // 20

当变量已经被声明, 需要使用() 将解构赋值的对象包裹起来

var name,age;
({name,age} = {name: "dada", age: 22});
console.log(name);	// "dada"
console.log(age);	// 22

对象的解构赋值也可以设定默认值

var {name = "dada", age} = {age: 22};
console.log(name);	// "dada"
console.log(age);	// 22 

对象的克隆 

const target = { ...src }; // 复制所有字段
let model = {...this.model1,...this.model2 }

 仅复制部分属性,涉及关键字 rest(剩余参数)的用法 

const obj = {name:"小火车",age: 18,height: 185}
const {name,...rest} = obj 
console.log(name) // 小火车
console.log(rest) // {age: 18, height: 185}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Mephisto180502

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值