我试图在JavaScript中构建一个数组,但我不确定这样做的正确方法,或者这种类型的数组是否可行...
假设我有一个键,用于表示阵列中的每个项目,以' a'并以' z'结尾。对于每个项目,数组键将与另一个多维数组对应。这些新的多维数组是一系列坐标(x和y)。原始数组中的每个项目都可以有多组坐标。例如:
如何使用Javascript构建这样的数组?什么是正确的语法?
答案 0 :(得分:3)
只需在列表中添加另一个可能的选项,与@ SMcCrohan的答案相同,混合对象和数组。
var coords = {
a: [{
x: 20,
y: 15
},
{
x: 25,
y: 17
}],
b: [{
x: 10,
y: 30
}],
....
};
这假设您始终使用坐标x
和y
,这意味着您可以像这样访问值:
var value1 = coords.a[1].x; // 25
var value2 = coords.b[0].y; // 30
答案 1 :(得分:2)
对于您提供的数据:
var arr = {
a: [[20,15],[25,17],[10,45]],
b: [[10,33],[12,2],[14,9],[72,103],[88,12]],
c: [[2,2],[41,21]],
d: [[0,0],[21,2],[44,44],[19,99],[1,1],[100,100]],
e: [[1,1],
f: [[3,40],[41,86]]
}
你想要的第一个结构,一个键控数组,不是JavaScript中的数组 - 它是一个对象。对象包含键值对。在这种情况下,值是数组,这些数组中的对象本身就是数组。
如果你来自另一种定义'常规'多维数组的语言,那么这里需要注意的重要一点是,没有期望或保证这个结构的'行'长度都相同。