Javascript 使用spread操作符有什么作用?
我只是在一些代码中注意到了这一点,我一直试图理解它在做什么Javascript 使用spread操作符有什么作用?,javascript,Javascript,我只是在一些代码中注意到了这一点,我一直试图理解它在做什么 this.rows[rowIndex][cell] = event.target.value; this.rows = [...this.rows]; 在我看来,它只是将this.rows赋值给它自己。是否有其他一些使用扩展运算符的方法是有意义的?或者它只是一个bug?扩展语法将提供原始数组的浅拷贝 这可能有用的原因至少有两个: 对原始行属性的任何引用都不会受到以后对复制数组的直接属性的赋值的影响 如果行的原始值不是真数组,而是it
this.rows[rowIndex][cell] = event.target.value;
this.rows = [...this.rows];
在我看来,它只是将
this.rows
赋值给它自己。是否有其他一些使用扩展运算符的方法是有意义的?或者它只是一个bug?扩展语法将提供原始数组的浅拷贝
这可能有用的原因至少有两个:
- 对原始
属性的任何引用都不会受到以后对复制数组的直接属性的赋值的影响行
- 如果
的原始值不是真数组,而是iterable(类似数组),则扩展语法赋值的结果仍然是真数组行
class-Foo{
构造函数(n){//定义类似数组的对象
该行={
//定义迭代器
[符号.迭代器]:函数*(){
for(设i=0;i
。作为控制台包装{max height:100%!important;top:0;}
它需要一个浅拷贝。如果原始的this.rows
类似于数组(iterable),但不是真正的数组,那么它将在赋值后成为一个数组。基本上与this.rows=this.rows.slice()做相同的事情。
您必须向我们展示更多的上下文来理解这一点。什么是event.target.value
?