2012-10-04 36 views
0

我试图调用另一个数组中的另一个数组中的元素。 例如....如何访问数组中的元素,另一个数组内的数组...在JavaScript中

var a1 = ["1","2","3"]; 
    var a2 = ["4","5","6"]; 
    var a3 = ["7","8","9"]; 
    var a4 = ["10","11","12"]; 

    var b1 = ["a1","a2"]; 
    var b2 = ["a3","a4"]; 

    var c = ["b1","b2"]; 

    var x = c[0]; 

    console.log(x); 

答案是x = b1

我如何定义var x = c[0] b1[1] a2[2],这样的回答会是6?

+2

那么,你为什么不把它们定义为嵌套数组? – clentfort

+2

你这样做的理由是什么? –

+7

如果你想a1是b1的元素,不要把a1放在引号中 – MikeB

回答

0

你想要的是嵌套数组。

var a1 = ["1","2","3"]; 
var a2 = ["4","5","6"]; 
var a3 = ["7","8","9"]; 
var a4 = ["10","11","12"]; 

var b1 = [a1,a2]; 
var b2 = [a3,a4]; 

var c = [b1,b2]; 

var x = c[0][1][2]; 

console.log(x); 
+0

完美。感谢您的第一个答案。 –

+0

完美接受? :) – saml

+0

是的,在四分钟内 –

0

定义阵列作为其它数组的元素,而不是字符串:

var a1 = [1, 2, 3]; 
... 
var b1 = [a1, a2]; 
... 
var c = [b1, b2]; 

var x = c[0][0][0]; // 1 
0

阵列a1实际上不是在b1 - 有只包含文本“A1”的字符串。如果你喜欢这样定义他们:

var a1 = ["1","2","3"]; 
var a2 = ["4","5","6"]; 
var a3 = ["7","8","9"]; 
var a4 = ["10","11","12"]; 

var b1 = [a1, a2]; 
var b2 = [a3, a4]; 

var c = [b1, b2]; 

然后你就可以得到“6”写c[0][1][2]

0
var a1 = ["1","2","3"], a2 = ["4","5","6"], a3 = ["7","8","9"], a4 = ["10","11","12"]; 
var b1 = [a1,a2]; 
var b2 = [a3,a4]; 
var c = [b1,b2]; 

var x1 = c[0][0][0]; 
var x2 = c[0][0][1]; 
var x3 = c[0][0][2]; 

console.log(x1); //1 (1st/0 item of a1) from c 
console.log(x2); //2 (2nd/1 item of a1) from c 
console.log(x3); //3 (3rd/2 item of a1) from c 

DEMO

相关问题