JS 中的 Array.fill()
用于填充数组的Array.prototype.fill()
是一个就地(in-place)方法,会改变原来的数组,但它同时又返回原数组的引用,
这容易导致用户误以为它是一个纯函数。
// [undefined, undefined, undefined]
const arr1 = new Array(3)
// [0, 0, 0]
const arr2 = arr1.fill(0)
// [0, 0, 1]
arr2[2] = 1
// [0, 0, 1]
console.log(arr1)