我不确定我的问题是否有意义,但更详细地说,我不明白如何将值推送到空的多维数组中。
例如
var x = 1;
var y = 2;
//tried this
var arr1 = [[,]];
for (var i = 0; i < arr1.length; i++){
arr1[i][0].push(x), arr1[i][1].push(y)
}
//Basically I want [[1,2], etc... ]
我是首发。
答案 0 :(得分:0)
您可以使用以下代码将元素添加到二维数组中
for(var i = 0; i < arr1.length; i++) {
var arr2 = new Array();
for(var key in arr1[i]) {
arr2.push(arr1[i][key]);
}
arr1.push(arr2);
}
答案 1 :(得分:0)
一些建议:
// 1st option
var arr1 = []
for (var i = 0; i < count; i++){
arr1.push([x,y]);
}
// 2nd option
var arr1 = [[],[]]
for (var i = 0; i < count; i++){
arr1[i].push(x,y);
}
答案 2 :(得分:0)
function add() {
// add values to multidimensional array
var x = 1;
var y = 2;
var array = [];
for(i = 0; i < 5; i++) {
array.push([x, y]);
}
console.log(array);
}
add();
结果:[[1,2],[1,2],[1,2],[1,2],[1,2]]
function replace() {
// replace values in multidimensional array
var x = 1;
var y = 2;
var array = [['',''],['','']];
for(i = 0; i < array.length; i++) {
array[i][0] = x;
array[i][1] = y;
}
console.log(array);
}
replace();
结果:[[1,2],[1,2]]
您可以查看控制台日志,它会显示结果
答案 3 :(得分:0)
您要求使用“推送”来填充多维数组
因此,假设您希望以这种形式使用数组:
arr1 = [ elem1, elem2, elem3, ..., elemN ]
每个elem#n
是一个数组,因此它是多维数组:
arr1 = [ [0, a], [1, b], [2, c], ... ]
由于“push”会向数组中添加一个新元素,因此您需要将“数组元素”“推送”到数组中,如下所示:
arr1 = [];
arr1.push([1,100]); // arr1 <---- [ [1,100] ]
arr1.push([2,101]); // arr1 <---- [ [1,100], [2,101] ]
arr1.push([3,102]); // arr1 <---- [ [1,100], [2,101], [3,102] ]
所以在你的情况下,你想使用循环来添加数组元素,其中第一个是'index',第二个是'value',你可以这样做:
var length = 5;
var x = 5;
for (var u=0; u<length; u++){
arr1.push( [u,x] );
}
// arr1 <-- [ [0,5], [1,5], [2,5], [3,5], [4,5] ]
希望这可以澄清您对使用“推”制作多维数组的理解。