对象的解构赋值
来源:互联网 发布:安卓软件效果器 编辑:程序博客网 时间:2024/04/30 04:03
解构不仅可以用于数组,还可以用于对象
- 1
- 2
- 3
- 1
- 2
- 3
对象的解构和数组有一个重要的不同。数组的元素是按此排序的,变量的取值由它的位置决定;而对象的属性没有次序,变量必须与属性同名,才能取到正确的值。
- 1
- 2
- 3
- 4
- 5
- 6
- 1
- 2
- 3
- 4
- 5
- 6
如果变量名与属性名不一致,必须写成这样:
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 1
- 2
- 3
- 4
- 5
- 6
- 7
对象的解构赋值是内部机制,是先找到同名属性,然后再赋给对应的变量。
真正被赋值的是后者,而不是前者。
- 1
- 2
- 3
- 1
- 2
- 3
上面的代码中, foo
是匹配的模式, baz
才是变量。真正被赋值的是变量baz
,而不是模式foo
。
和数组一样,解构也可以用于嵌套解构的对象
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 1
- 2
- 3
- 4
- 5
- 6
- 7
注意,这时p
是模式,不是变量,因此不会被赋值。
对象的解构也可以指定默认值:
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
如果解构失败,变量的值等于undefined
- 1
- 2
- 1
- 2
如果解构模式是嵌套的对象,并且子对象所在的父属性不存在,那么会报错:
- 1
- 2
- 1
- 2
由于数组本质是特殊的对象,因此可以对数组进行对象属性的解构:
0 0
- 对象的解构赋值
- 对象的解构赋值
- 对象的解构赋值
- ES6 对象的解构赋值
- 9、ES6 对象的解构赋值
- JavaScript解构赋值(代码说明ES6数组, 对象, 函数的解构赋值)
- 数组的解构赋值
- 数组的解构赋值
- 变量的解构赋值
- 变量的解构赋值
- 变量的解构赋值
- 变量的解构赋值
- 数组的解构赋值
- 变量的解构赋值
- 变量的解构赋值
- 变量的解构赋值
- 变量的解构赋值
- 变量的解构赋值
- C#实现Base64加密解密
- java架构师要求
- 记录学习的点滴(ArrayList的实现原理)
- DOCSIS TLV43
- 如果使Tomcat产生core和heap dump文件
- 对象的解构赋值
- YUV444,YUV422P,YUVY,YUYV,UYVY,NV21,NV12
- Linux环境下如何安装nginx
- jbdm注意事项
- C++基本控制结构
- VTK修炼之道67:体绘制讨论_不透明度传输函数
- Java问题排查常用linux命令
- 碎知识总结
- HTML网页制作时需要注意的技巧