学习总结-ES6 --- 基础-解构赋值

4 篇文章 0 订阅
3 篇文章 0 订阅

学习总结-ES6 — 基础-解构赋值

首先是变量的解构赋值(数组)

    <script>
        let [a,b] = [1,2]
        console.log(a);//1
        console.log(b);//2
    </script>

这样简化了赋值的过程其中友以下的集中情况也可以赋值


    <script>
        let [a, ,c] = [1,2,3]
        console.log(a);//1
        console.log(c);//3
        console.log(b);// b is not defined
    </script>

这样情况下 将不会定义和声明b 而是将3 赋值给c


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

这样会将1赋值给a 其他全部赋值给c (注意c的右侧不能有 ,了 也就是说 c必须是最后一个参数)


        let [a,b,c='defalut',d='defalut']  = [1,2,3]
        console.log(a);
        console.log(b);
        console.log(c);
        console.log(d);

还可以设置默认值 结果如下图所示
这里写图片描述

==============================================================

变量的解构赋值(对象)

        let o = {p: 42, q: true};
        let {p, q} = o;

        console.log(p); // 42
        console.log(q); // true

这里值得注意的是 如果解构的内容对象中没有对应 则会出现undefined


        let o = {p: 42, q: true, a: 4444};
        ({p:P, q, r} = o);

        console.log(P); // 42
        console.log(q); // true
        console.log(r); // undefined
        console.log(p); // p is not defined

以上的代码首先是通过解构可以无需声明来赋值一个变量。 其次是可以将小p 重命名为P 可以从一个对象中提取变量并赋值给和对象属性名不同的新的变量名。


let res = {
    status: 200,
    id: 12,
    data: [{name:'wosj '},{name:'shaingdan'}] 
}
let { status,id,data} =res;

console.log(status);
console.log(id);
console.log(data);

例如返回一个res的数据 然后利用解构可以便捷的为其赋值

解构函数


let {floor, pow} =Math;
let a = 1.1;
console.log(floor(a)) //1
console.log(pow(2,3))//8
,
将Math函数 中的floor 解构出来使用 我们也可以将字符串的自带方法解构出来如下

let{length:mylength} ="123456";
console.log(mylength);// 6 

解构十分方便 简化了赋值的过程
还有很多用法待补充 如有错误望指正

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值