变量的解构赋值[二对象]
ES6 允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构(Destructuring)。 一.对象的解构赋值 1.基本写法 基本写法 let { foo , bar } = { foo : 'aaa' , bar : 'bbb' } ; foo // "aaa" bar // "bbb" 2.特点 ① 对象属性赋值是按照属性名匹配的,和属性顺序无关。 let { bar , foo } = { foo : 'aaa' , bar : 'bbb' } ; foo // "aaa" bar // "bbb" ② 对象解构无相应属性,赋值为 undefined let { foo } = { bar : 'baz' } ; foo // undefined ③ 对象的解构赋值可以取到继承的属性 const obj1 = { } ; const obj2 = { foo : 'bar' } ; Object . setPrototypeOf ( obj1 , obj2 ) ; const { foo } = obj1 ; foo // "bar" ④ 与数组一样,解构也可以用于嵌套结构的对象。 //一.嵌套结构 let obj = { p : [ 'Hello' , { y : 'World' } ] } ; let { p : [ x , { y } ] } =