Javascript 在特定位置的数组映射中推送值
我正在使用以下方法创建阵列地图:Javascript 在特定位置的数组映射中推送值,javascript,Javascript,我正在使用以下方法创建阵列地图: var m = new Map(Array(40).fill(new Array()).entries()); 现在,我想推送这些数组中的值。但当我这么做的时候: m.get(1).push(10) 值10被推入所有数组,而不是第一个位置的数组 fill获取single arrayan使用它填充给定数组的所有行,它不会为每一行创建新数组。这意味着您的单个数组引用在所有行之间共享。由于array是一种引用类型,因此可以使用单个引用对其进行操作,从而更改实际对象
var m = new Map(Array(40).fill(new Array()).entries());
现在,我想推送这些数组中的值。但当我这么做的时候:
m.get(1).push(10)
值10被推入所有数组,而不是第一个位置的数组
fill
获取single array
an使用它填充给定数组的所有行,它不会为每一行创建新数组。这意味着您的单个数组引用在所有行之间共享。由于array
是一种引用类型,因此可以使用单个引用对其进行操作,从而更改实际对象。您可以通过比较每行的引用来检查这一点
const arr=new Array(2).fill(new Array());
console.log(arr[0]==arr[1])代码>您可以采用另一种模式来构建独立阵列
var m=newmap(Array.from({length:40},=>[]).entries());
m、 得到(1),推(10);
console.log([…m])代码>你只是在确认OP算出了什么…需要每个答案都有问题的完整答案,每个方面???它不能将某个部分引用到另一个部分吗?这不能回答问题。您没有解释如何仅在“映射”的一个位置正确设置值。另请参见上面的注释