如何为多维数组分配关键字和值



我在jquery中声明了一个包含键和值的多维数组,但这里显示的错误是我的代码:

var beadArray = 
{
0: {
barCode: "843036905884",
build: "144",
height: "46",
image: "https://www.brighton.com/charmbuilder/beads/v144_qijc0272.png",
mask: [
0: ["3", "36"],
1: ["1", "38"],
2: ["1", "38"],
3: ["1", "38"],
4: ["1", "37"],
5: ["1", "37"],
6: ["1", "37"],
7: ["2", "37"],
8: ["1", "38"]        
],
name: "Autumn Spirit Bead",
quantity: "484",
rX: "19",
rY: "23",
retail: "29",
style: "jc0272",
theme: "A-E-H-I-J-L",
type: "B",
width: "40"
}
};

显示

未捕获语法错误:意外的令牌:在0:["3","36"],行

不能在数组中定义带索引的值

var arr = [0:"1"];

你必须在下面的数组中设置值

var arr = ["1"];

并且您可以作为访问

arr[0];

因此,在您的情况下,您的语法应该是

var beadArray = 
[
{
barCode: "843036905884",
build: "144",
height: "46",
image: "https://www.brighton.com/charmbuilder/beads/v144_qijc0272.png",
mask: [
["3", "36"],
["1", "38"],
["1", "38"],
["1", "38"],
["1", "37"],
["1", "37"],
["1", "37"],
["2", "37"],
["1", "38"]        
],
name: "Autumn Spirit Bead",
quantity: "484",
rX: "19",
rY: "23",
retail: "29",
style: "jc0272",
theme: "A-E-H-I-J-L",
type: "B",
width: "40"
}
];

Javascript没有关联数组,例如PHP中的数组怪物。它有数组和对象文字,这些文字类似于其他语言中的散列或字典。

当你想要一个值列表时,应该使用数组:

[1,2,3,4]

对象文字用于将键映射到值:

{ foo: 'bar' }

虽然你可以在对象文字中使用整数作为键,但在这种情况下,它有点毫无意义,比如:

[
["3", "36"],
["1", "38"],
["1", "38"]
][1]

将给出与完全相同的结果

{
0: ["3", "36"],
1: ["1", "38"],
2: ["1", "38"]
}[1]

最新更新