结果集是[{key:key1,value:value1},{key:key2,value:value2}],我应该在Javascript中使用哪种方法来获取特定key的值。示例我需要'key2'的值。有特定的方法还是应该使用循环?
提前致谢。
最佳答案
我会将结果集转换为索引对象,然后对索引对象执行所有后续查找。这样,您只需要遍历一次结果集即可。
下面是基于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;
}
}
关于javascript - 使用键[{key:key1,value:value1},{key:key2,value:value2}]获取值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32263817/