2013-07-20 170 views
-1

我想有一個數組的數組,如下面的函數顯示。訪問數組或對象的數組

function getarrayinfo(index) 
{ 
    var myarray1=new Array(); 
    myarray[0]=[1,1.1,1.2]; 
    myarray[1]=[0.1,0.2,0.3]; 
    var myarray2=new Array(); 

    for (myarray2[i]) 
    { 
     myarray2[i]=myarray[i]; 
     i++; 
    } 

,所以我可以做這樣的事情......

{ 
    var arrayinfo=myarray2[marray1[index]]; 
    return arrayinfo; 
} 

,但這種類型的代碼似乎並沒有運行..

+7

真的嗎?那'爲'... – Alexander

+1

目前還不清楚你需要什麼。要在Javascript中創建一個數組數組,你只需要將每個元素定義爲一個數組。例如:'var arrayOfArrays = new Array(new Array('1','2'),new Array('3','4'));'then'arrayOfArrays [0] [0]'是'1' –

+0

@koala_dev或者,更簡單的數組文本的語法:'VAR arrayOfArrays = [[ '1', '2'],[ '3', '4']];' – tjameson

回答

2

它爲什麼會跑那裏有語法錯誤在你的代碼...

for (myarray2[i]) 

這不是如何寫一個for循環。你似乎也訪問索引i這是從未初始化。

var myarray1=new Array(); 
myarray[0]=[1,1.1,1.2]; 

創建一個myarray1,並試圖插入myarray

更好的初始化與[]的陣列,而不是

試試這個

for (var i=0; i< myarray1.length; i++) { 
    myarray2[i]=myarray[i]; 
} 

var myarray1 = []; // Use this to create an array 
myarray1.push([1, 1.1, 1.2]); // Use push to instert instead of an index 
myarray1.push([0.1, 0.2, 0.3]); 
var myarray2 = []; 

for (var i = 0; i < myarray1.length; i++) { 
    myarray2.push(myarray1[i]); 
} 

console.log(myarray2); 

Check Fiddle

+0

或'myarray1.forEach(myarray2.push,myarray2)'使用數組函數。 – tjameson

0

第1步:瞭解什麼是多維數組(在你的語言 - 數組的數組)

var arr = [1, 2, [3, 4], 5]; 

alert (arr[2][1]); //alerts "4" 

第2步:這是你想要的:

var container_array=[[a,b,c],[d,e,f]]; 

第3步:解決方案

var container_array=new Array(); 
    sub_array_1=[1,1.1,1.2]; 
    sub_array_2=[0.1,0.2,0.3]; 


container_array.push([1, 1.1, 1.2]); 
container_array.push([0.1, 0.2, 0.3]); 

console.log(container_array) 

Example-->push in javascript

如果你有很多的子陣列,然後去環