我想在每个第一个元素中创建一个带有索引号的二维数组。
(我之前的问题让我想到了这一点>)
这有效:
$('#create_indexed_array').click(function() {
var new_array = [[9,9],[9,9],[9,9],[9,9],[9,9]];
for (var i = 0; i < 5; i++) {
new_array[i][0] = i;
}
alert(JSON.stringify(new_array));
});
但这不起作用:
$('#create_indexed_array').click(function() {
var new_array = new Array(new Array());
for (var i = 0; i < 2; i++) {
new_array[0][i] = ""; // create cols
}
for (var i = 1; i < 5; i++) {
new_array[i] = new_array[0]; // create rows
}
for (var i = 0; i < 5; i++) {
new_array[i][0] = i; // set index
}
alert(JSON.stringify(new_array));
});
编辑: 我的最终工作版本(到目前为止):
var myArray = [];
var rows = 5;
var cols = 2;
for (var i = 0; i < rows; i++) {
myArray [i] = [];
for (var j = 0; j < cols; j++) {
if (j==0) myArray [i][j] = i;
else myArray [i][j] = '';
}
}
alert(JSON.stringify(myArray));
(r) 主要由 jfriend 提供;)
仍然不知道为什么不能在开头声明二维数组:myArray = [[]]