使用密钥[{key:key1,value:value1},{key:key2,value:value2}]获取价值

时间:2015-08-28 05:22:18

标签: javascript key-value

结果集是[{key:key1,value:value1},{key:key2,value:value2}],我应该在Javascript中使用什么方法来获取特定键的值。示例我需要'key2'的值。是否有特定的方法或我应该使用循环?

提前致谢。

1 个答案:

答案 0 :(得分:2)

我会将该结果集转换为索引对象,然后对索引对象执行所有后续查找。这样,您只需迭代结果集一次。

以下是基于reduce方法的简单实现。



var results = [{key: "key1", value: "value1"}, {key: "key2", value: "value2"}];
var index = results.reduce(function(index, result) {
    index[result.key] = result.value;

    return index;
}, {});

alert(index.key2);




正如评论中所提到的,如果你不需要进行多次查找,只需要提取一个值,那么使用常规for循环会更快并且使用更少的内存。



var results = [{key: "key1", value: "value1"}, {key: "key2", value: "value2"}];

for (var i=0; i < results.length; i++) {
  if (results[i].key === 'key2') {
    alert(results[i].value);
    
    break;
  }
}
&#13;
&#13;
&#13;