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算出了什么…需要每个答案都有问题的完整答案,每个方面???它不能将某个部分引用到另一个部分吗?这不能回答问题。您没有解释如何仅在“映射”的一个位置正确设置值。另请参见上面的注释