【发布时间】:2018-05-08 07:00:36
【问题描述】:
我正在使用 ngx-charts(Angular2+ 的图表库),我发现这行代码我不明白。
@Input() activeEntries: any[] = [];
/* ... */
/* Then, in a function */
this.activeEntries = [...this.activeEntries];
对我来说,它没有任何作用。你知道这种用法和它的作用吗?
谢谢
【问题讨论】:
-
数组是一个对象。 JS 中的对象是使用引用分配的。因此,如果您直接分配它,两个变量将指向相同的位置。
[...this.activeEntries]这将制作一个副本。这与array.slice(0)相同 -
创建一个新数组而不是复制一个引用。
标签: javascript arrays spread-syntax