Я бы преобразовал этот результат в индексный объект, а затем выполнил все последующие проверки объекта индекса. Таким образом, вам нужно только повторить выбор результата.
Ниже приведена прямая реализация, основанная на методе 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);
Как уже упоминалось в комментариях, если вам не нужно делать несколько внешний вид окна, но только нужно извлечь одно значение, используя обычный для цикла будет быстрее и использование нет память.
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;
}
}
Это лучшая идея, если вы хотите получить доступ к значениям последовательно в большем наборе данных. Если вы хотите посмотреть его только один раз за время выполнения приложения, простой для цикла будет быстрее. – JacobMiki