【问题标题】:Concatenate strings in key of plain object在普通对象的键中连接字符串
【发布时间】:2014-03-29 15:40:17
【问题描述】:

所以我有这个简单的对象

var data = {};

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

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

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

谢谢。

【问题讨论】:

  • 'a'+toString(i) 并没有按照你的想法去做。

标签: javascript jquery string object for-loop


【解决方案1】:

使用这个语法

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

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

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

【讨论】:

    【解决方案2】:

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

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

    【讨论】:

      猜你喜欢
      • 2021-08-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-01-09
      • 2021-08-03
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多