簡體   English   中英

在 javascript 中創建一個二維對象數組

[英]Creating a 2d array of objects in javascript

我有一個 javascript object -

cell{xPos, yPos};

我想創建這個 object 的二維數組。

cellPrototype = function(x, y) {
this.xPos = x;
this.yPos = y;
}
var cell = new Array();
for(var i=0;i<10;i++)
{
  cell[i] = new Array();
  for(var j=0;j<10;j++)
  {
     cell[i][j] = new cellPrototype(i,j);
  }
}

此代碼不起作用。 也沒有——

var cellPrototype = function(x, y) {    
return { 
  xPos : x;
  yPos : y;
}
var cell = new Array();
for(var i=0;i<10;i++)
{
  cell[i] = new Array();
  for(var j=0;j<10;j++)
  {
     cell[i][j] = new cellPrototype(i,j);
  }
}

那么如何在 javascript 中創建一個 object 的二維數組?

這對我來說很好,我不確定這是否正是您正在尋找的 output ,其中Array[x][y]將引用一個 object ,其點位於x, y

var Coords = function(x, y) {
    return {
        "x" : x,
        "y" : y
    };
};

var Main = [];

for (var i = 0, l = 10; i < l; i++) {
    Main[i] = [];
    for (var j = 0, l2 = 10; j < l2; j++) {
        Main[i][j] = Coords(i, j);
    }
}

http://jsfiddle.net/robert/d9Tgb/

你可以像這樣制作一個二維數組:

var new_array = [];
var arr_length = 10;
for(var i = 0; i < arr_length; ++i){
    new_array[i] = [];
}

這篇文章有點老了,但這是另一種創建二維數組的方法

var arr1=[];
var x=['a','b','c','d'];
var y=[1,2,3,4];     

for( var i in x){
    arr1.push([x[i],y[i]]); //For x and y of the same length
}

在 JavaScript x 和 y 可以是對象 arrays

jsFiddle 它:)

制作一個空數組並將子 arrays 推到它上面

var array = [];
array.push([1,2,3,4]);
//array[0][0] == 1

或一口氣

var array = [[1,2,3,4], [1,2,3,4], [1,2,3,4]];

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM