Javascript multidimensional array updating specific element

后端 未结 5 1484
一向
一向 2021-01-05 19:48

I have a string that has been converted into an 2D Array in js.

board = "...|.X.|...|"

It is used to represent a game board

each . represent

5条回答
  •  既然无缘
    2021-01-05 20:33

    PROBLEM:

    I'm betting that you have a one-dimensional array with strings stored in each. So your array actually looks like:

    array (
        [0] => '...',
        [1] => '.X.',
        [2] => '...'
    )
    

    When this is what you want:

    array (
        [0] => array (
            [0] => '.',
            [1] => '.',
            [2] => '.'
        ),
        [1] => array (
            [0] => '.',
            [1] => 'X',
            [2] => '.'
        ),
        [2] => array (
            [0] => '.',
            [1] => '.',
            [2] => '.'
        )
    )
    


    SOLUTION:

    When constructing your 2D array, make sure you explicitly declare each entry in board as an array. So to construct it, your code might look something like this:

    board = new Array();
    rows = 3;
    for (var i = 0; i < rows; i++)
        board[i] = new Array('.', '.', '.');
    

提交回复
热议问题