vue new Array().fill()
时间: 2023-11-01 11:06:37 浏览: 135
vue.js和vue.min.js
5星 · 资源好评率100%
回答: 在Vue中,使用`new Array().fill()`的方式来创建数组时需要注意一个bug。当使用`new Array().fill({})`来填充数组时,数组中的每个元素都会引用同一个对象。这意味着,如果修改其中一个元素的属性,其他元素的属性也会被修改。例如,当执行`let a = new Array(3).fill({});`后,`a`数组中的每个元素都引用了同一个空对象。当我们修改其中一个元素的属性时,例如`a\[0\].name = '张三';`,所有元素的属性都会被修改,结果为`\[{name: "张三"}, {name: "张三"}, {name: "张三"}\]`。\[3\]所以在使用`new Array().fill()`创建数组时,需要注意这个bug,如果需要每个元素都是独立的对象,可以使用其他方式来创建数组。
#### 引用[.reference_title]
- *1* *2* [从Vue看ES6中Array的fill方法](https://blog.csdn.net/fredricen/article/details/109842356)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item]
- *3* [new Array(n).fill()创建数组](https://blog.csdn.net/zqlbanzhuan/article/details/127865785)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]
阅读全文