Как получить доступ к 2D-массиву, используя single for l oop in JavaScript? - PullRequest
4 голосов
/ 05 августа 2020

У меня есть 2D-массив с 10 строками и 10 столбцами, и я хочу получить доступ к элементу столбца из каждой строки следующим образом:

myArray[0][9]
myArray[1][4]
myArray[2][5]
myArray[3][9]
myArray[4][5]
myArray[5][9]
myArray[6][8]
myArray[7][9]
myArray[8][7];  
myArray[9][8] 

Код, который я использовал:

for(var i=0; i<theatregoers.length; i++)
    {
       myArray[i][9].position=true;
      
       
    }

Примечание: я не знаю, как изменять номера столбцов таким образом каждый раз, когда выполняется l oop. Я не хочу использовать гнездо l oop, просто использую один l oop.

Ответы [ 2 ]

5 голосов
/ 05 августа 2020

Вы можете сделать что-то подобное. поместите индексы / номер столбца в массив, например:

  let colArray = [9,4,5,9,5,9,8,9,7,8] 
    
  for(var i=0; i<myArray.length; i++){  
        myArray[i][colArray[i]].position=true;              
     }
2 голосов
/ 05 августа 2020

Вы можете l oop свой массив следующим образом

var row = 10;
var column = 10;

for (var i = 0; i < row * column; i++) {
     myArray[Math.floor(i / row)][i % column].position = true;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...