如何将数据推送到空的二维数组中的特定子数组

时间:2019-06-02 13:54:31

标签: javascript arrays multidimensional-array

我正在尝试设置一个二维数组,该数组应在特定的子数组处接收值。我用以下方法创建了数组:

  

myArray = Array(100).fill([])

现在,假设我要输入一个值来表示40号子数组

我正在这样做:

  

myArray [40] .push(“ myValue”)

我希望将值仅推送到myArray [40],而不是将其作为一百个子数组中每个数组的第一个元素进行推送。

我已经搜索了很长时间,但是我仍然不知道自己在做什么错。请帮忙。

1 个答案:

答案 0 :(得分:0)

fill会将相同的值压入每个元素,而不是其副本。当它是数字或字符串或其他不可变的东西时,这很好。但是现在每个副本都是对同一对象的引用。

有多种方法可以解决此问题。这是一个(切换到十个元素进行演示):

const myArray = [...Array(10)].map((_, i) => [])

myArray[4].push('myValue')

console.log(myArray)