javascript - 返回对象数组的变量名称

时间:2016-05-25 17:12:40

标签: javascript arrays javascript-objects

我有一个类似于下面的对象数组。

var object1 = {...},
var object2 = {...};

var array = [object1,object2];

我希望以后能够在脚本中访问实际的变量名。例如,id喜欢返回实际的字符串“object1”而不是在使用类似于下面的循环的代码时返回实际的对象。

for (i in array) {
    var variableName = array[i];
}

我考虑使用一个关键值对,但我们已经很清楚地知道了这些细节。

keyValuePair = [{name: "object1", object:object1}, {name:"object2",object:object2}];

我不确定这是理想的结构还是如何访问它。

思考?

2 个答案:

答案 0 :(得分:0)

为什么不将变量名称用作属性?

var object1 = {...},
var object2 = {...};

var array = { object1: object1, object2: object2 };

答案 1 :(得分:0)

我会创建这样的东西:

var object1 = {...};
var object2 = {...};

var keyValuePair = {
  object1: object1,
  object2: object2
};

然后您可以像object1那样访问keyValuePair["object1"]

请注意,在ECMAScript 6中,语法较短:

var keyValuePair = {
  object1,
  object2
};