ES6语法---解构赋值

4 篇文章 0 订阅

解构赋值概念

按照一定的模式,从数组和对象中提取值,对变量进行赋值,就被称为解构。
目的是为了提高效率,使用起来更加方便。
以下的各个说明,我会类比着ES5去解释,希望能帮到小伙伴们。

数组解构
正常解构:
ES5:
var arr = [1,2,3];
var a = arr[2];
console.log(a);//3

ES6:
let[a,b,c] = [1,2,3];
console.log(c);//3
嵌套数组解构:
ES5:
var arr = [1,2,[3,4],5];
var a = arr[2][0];
console.log(a);//3

ES6:
let[a,b,[c,d],e] = [1,2,[3,4],5];
console.log(c,d);//3,4
空缺变量
ES5:
var arr = [1,2,,5];
console.log(arr[2]);//undefined

ES6:
let[a,b,,e] = [1,2,[3,4],5];
console.log(e);//5
多余变量
ES5:
var arr = [1,2,3];
console.log(arr[3]);//undefined

ES6:
let[a,b,,e] = [1,2,[3,4]];
console.log(e);//undefined
默认值
有默认值,且没有值的,取默认值;有值的取自身的值,不取默认值
let[a,b,c,d='44'] = [1,2,3];
console.log(d);//44

let[a,b,c,d='44'] = [1,2,35];
console.log(d);//5
对象解构
ES5:
let obj = new Object();
obj.name = "张三";
obj.age = "22";
console.log(obj.name);//张三

ES6:
let obj = new Object();
obj.name = "张三";
obj.age = "22";
let {age:age,name:name} = obj;
console.log(name,age);//张三 22
字符串解构
ES5:
var res = "晚上好";
console.log(res[2]);//好

let[a,b,c] = "晚上好";
console.log(b);//上
函数参数解构
function show({name,age}){
    //以前
    // var name = obj.name;
    console.log(name);//李四
    //现在
    console.log(name,age);//李四,23
}
let obj = {
   name:"李四",
   age:"23"
}
show(obj);
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值