首页 > 其他 > 详细

ES6新增的解构

时间:2021-04-25 23:11:51      阅读:30      评论:0      收藏:0      [点我收藏+]

所谓解构就是解构聚合数据

  在ES5中的聚合数据有:对象、数组

    在之前,对象中获取数据的方式只能通过点语法或中括号语法

        数组中获取数据的方式只能通过中括号语法

  在ES6中简化了获取数据的方式,提供了解构语法:对象解构数组解构

 

对象解构

  语法:let { key1, key2, ...keys } = obj;

    key1相当于 obj.key1 

    key2相当于 obj.key2

    keys获取的是剩余的属性,如果没有剩余的属性,获取到的就是一个空对象

    技术分享图片

  注意: 解构出来的属性、变量一定是和对象中的属性是同名的

    解构问题:

       1 如果使用var解构,会污染全局对象(window),我们可以使用let关键字解决

       2 解构出来的方法,方法中的this将发生变化

       3 对于引用类型来说,只是指向的改变,而对于值类型来说,是真正的复制

  逆运用:我们可以通过三个点语法,将一个对象中的所有数据传递给一个对象字面量中:let obj =  { ...keys }

      技术分享图片

 

 

 

数组解构

  语法:  let [item1, item2, ...items] = arr;

    item1表示第一个成员

    item2表示第二个成员

    items表示剩余的成员,

     技术分享图片

 

  注意:如果使用var解构,也会污染全局对象(window),我们可以通过let关键字解决

  获取剩余成员的语法:

    1如果数组有剩余的成员,获取到的是数组中所有的剩余成员

    2 如果没有剩余的成员,获取到的是一个空数组

    3 前面解构的变量,可以正常使用

  逆运用:我们可以通过三个点语法,将一个数组中的所有数据传递到一个数组字面量中,let item = [ ...arr ] (复制数组)

      技术分享图片

 

 

解构总结

  解构指的是等号左侧的部分

  逆运用是等号右侧的部分

     例如,复制数据

  解构:对象解构,属性名称匹配

  数组解构,位置对应

ES6新增的解构

原文:https://www.cnblogs.com/yess/p/14701486.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!