在普通对象的键中连接字符串

时间:2014-02-26 16:42:17

标签: javascript jquery string object for-loop

所以我有这个普通的对象

var data = {};

我希望在像这样的for循环中用键值对填充它

for(var i=0; i<n; i++){
    $.extend(
        data,
        {
            'a'+toString(i): someFunction(i),
            'b'+toString(i): someFunction(i)
        };
    );
};

但似乎在定义密钥时不可能连接字符串。 有什么方法可以做我需要的东西,因为我觉得我的方法从一开始就很蹩脚。

感谢。

2 个答案:

答案 0 :(得分:6)

使用此语法

for ( var i = 0; i < n; i++ ) {
    data['a'+toString(i)] = someFunction(i);
}

要将非文字键与对象一起使用,您需要使用方括号表示法。这允许您创建动态密钥。

有关方括号表示法的更多信息,请查看here

答案 1 :(得分:5)

您需要使用bracket notation作为member operator,因为密钥是动态的

for (var i = 0; i < n; i++) {
    data['a' + toString(i)] = someFunction(i);
    data['b' + toString(i)] = someFunction(i);
}