我正在将PHP代码编写到Node.js中,而我在程序处理多维数组的部分已经停下来了。

在PHP中,我得到了这个(为简化起见,删除了for循环):

$tables = [];
$left_over_array = [34, 35, 36, 37];
$round = 0;
$row = 0;
$tables['round_'.$round][$row][]=$left_over_array[0];
$tables['round_'.$round][$row][]=$left_over_array[1];
$tables['round_'.$round][$row+3][]=$left_over_array[0];
$tables['round_'.$round][$row+3][]=$left_over_array[1];


编辑:$row值不在0,1,2,3中,但可能在0, 1, 10, 3, 12顺序中。

PHP代码的结果如下所示:

$tables = [
              'round_0'=>[
                  '0'=>[
                      0=>34,
                      1=>35
                  ],
                  '3'=>[
                      0=>36,
                      1=>37
                  ],
               ]
          ]


稍后我需要访问此数据。当我在此结构中拥有它时,我可以简单地执行$tables['round_0'][3][1]以获取值36

我的问题是,如何用Javascript实现同一目标?还是应该使用对象?然后我该如何处理对象

最佳答案

解决了



var tables = [];
var left_over_array = [34, 35, 36, 37];
var round = 0;
var row = 0;


tables['round_'+round] = []; //In JS initialization before assignment is important

tables['round_'+round][row+3] = [
  left_over_array[0],
  left_over_array[1],
];

tables['round_'+round][row+10] = [
  left_over_array[3],
  left_over_array[1],
];


console.log(tables['round_0'][3][1]);

07-24 17:56
查看更多