让我们考虑一下:
var list = [a1:"123",b2:"234",c3:"345"];
这个list
obj可以按照这个键名创建变量吗?
var a1 = list[0];
var b2 = list[1];
var c3 = list[2];
答案 0 :(得分:3)
使用[]
表示法时,只能使用数字索引创建数组。要拥有命名属性,必须使用{}
对象表示法:
var list = { a1: "123", b2: "234", c3: "345" };
然后,您可以list.a1
,list.b2
和list.c3
访问它们。
答案 1 :(得分:1)
问题不明确。您在示例中显示的内容是有效的。但你也可以像你建议的那样创建变量名称
for( var key in list ) {
window[key] = list[key];
}
这样您最终会得到具有所需值的a1
,b2
和c3
变量,但这些变量将是全局变量。
答案 2 :(得分:0)
首先你有一个错误,你正在尝试合并散列数组和常规数组。你应该宣布一个这样的数组:
var list = ['123', '234', '345']
然后
var a1 = list[0]
依此类推,或者宣布它像哈希数组一样,它看起来像这样
var list = {'a':'123','b':'234','c':'345'}
var a1 = list.a