-1

When I make a nested array in Javascript using this:

let arr = Array(5).fill(Array(5).fill("O"))

It properly shows a 5x5 array of "O"

However, when I do:

arr[1][0] = "S"

It shows a result of:

["S", "O", "O", "O", "O"],
["S", "O", "O", "O", "O"],
["S", "O", "O", "O", "O"],
["S", "O", "O", "O", "O"],
["S", "O", "O", "O", "O"]

instead of just overwriting a single O.

Milesman34
  • 177
  • 1
  • 6

1 Answers1

-2

Array.fill returns the array, so the same array reference exists on each "row".

Evan Trimboli
  • 29,900
  • 6
  • 45
  • 66