mirror of
https://github.com/ruanyf/es6tutorial.git
synced 2025-05-29 22:12:21 +00:00
docs(object): add object spread #517
This commit is contained in:
parent
1ac918c804
commit
f6c7ded8da
@ -1297,7 +1297,7 @@ x.a.b // 2
|
||||
|
||||
上面代码中,`x`是解构赋值所在的对象,拷贝了对象`obj`的`a`属性。`a`属性引用了一个对象,修改这个对象的值,会影响到解构赋值对它的引用。
|
||||
|
||||
另外,解构赋值不会拷贝继承自原型对象的属性。
|
||||
另外,扩展运算符的解构赋值,不能复制继承自原型对象的属性。
|
||||
|
||||
```javascript
|
||||
let o1 = { a: 1 };
|
||||
@ -1322,7 +1322,7 @@ y // undefined
|
||||
z // 3
|
||||
```
|
||||
|
||||
上面代码中,变量`x`是单纯的解构赋值,所以可以读取对象`o`继承的属性;变量`y`和`z`是双重解构赋值,只能读取对象`o`自身的属性,所以只有变量`z`可以赋值成功。
|
||||
上面代码中,变量`x`是单纯的解构赋值,所以可以读取对象`o`继承的属性;变量`y`和`z`是扩展运算符的解构赋值,只能读取对象`o`自身的属性,所以变量`z`可以赋值成功,变量`y`取不到值。
|
||||
|
||||
解构赋值的一个用处,是扩展某个函数的参数,引入其他操作。
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user