【问题标题】:How to select object node by key using variable如何使用变量按键选择对象节点
【发布时间】:2017-10-30 09:06:58
【问题描述】:

我有一个名为 assignments 的对象,其中包含数组;

assignments = {
    'version_1': [1,2,3,4,5],
    'version_2': [6,7,8,9,0],
    'version_3': [3,4,5,6,7]
}

如果我想获取特定版本的值,我可以简单地说类似console.log(assignments.version_2);

但是如果我在变量中设置了一个整数呢?我将如何动态引用这些值。例如

var version_id = 2;
console.log(assignments.version_[version_id]);

【问题讨论】:

标签: javascript object


【解决方案1】:

你可以用这个:

var version_id = 2;
console.log(assignments["version_" + version_id]);

或者,如果你知道你只需要支持有 es6 的浏览器,你可以这样做:

assignments[`version_${version_id}`] 

Es6 模板字符串让事情变得更好

【讨论】:

  • 完美。谢谢。
  • @GGO - 添加了缺少的右括号 - 希望对你有好处
  • @Typhoon101 如果你知道你只需要支持具有 es6 的浏览器,你可以这样做 assignments[`version_${version_id}`] -- es6 模板字符串让事情变得更好
【解决方案2】:

尝试关注

var assignments = {
  'version_1': [1, 2, 3, 4, 5],
  'version_2': [6, 7, 8, 9, 0],
  'version_3': [3, 4, 5, 6, 7]
};

var version_id = 2;

console.log(assignments["version_" + version_id]);

【讨论】:

    【解决方案3】:

    assignments = {
        'version_1': [1,2,3,4,5],
        'version_2': [6,7,8,9,0],
        'version_3': [3,4,5,6,7]
    }
    console.log(assignments['version_2'])

    【讨论】:

      猜你喜欢
      • 2010-09-05
      • 1970-01-01
      • 1970-01-01
      • 2016-03-25
      • 2017-02-10
      • 1970-01-01
      • 1970-01-01
      • 2014-08-10
      • 1970-01-01
      相关资源
      最近更新 更多