js fill内设置引用类型的坑

当初始化数组调用fill时,如果里面是引用数据类型,被填充的是相同地址下的数组,因此修改其中一个引用类型的值,会导致所有引用类型都被修改:

let arr = new Array(3).fill([0,0]); //[[0,0],[0,0],[0,0]]
arr[0][0]=1 //当修改其中一个值时,其他值都被修改
console.log(arr)
// [[1,0],[1,0],[1,0]]


版权声明:本文为qzydaqin原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。