javascript - 为搜索到的键/值对返回 bool 值的最简单方法 (Javascript)

标签 javascript json

我有以下 JSON 字符串...

JSON:

[{"my_id":"100002","my_confirmation":"682354682"},{"my_id":"100005","my_confirmation":"281735345"},{"my_id":"100009","my_confirmation":"361567356"}]

... 然后我将其解析为键/值对数组。

如果尝试匹配“100005”的“my_id”,通过 Javascript 返回 bool 值的最简单方法是什么?还有,是否需要解析成数组?

最佳答案

如果您已经在解析 JSON 字符串,那么在 ECMA5 中您可以使用 Array.prototype.some

Javascript

var jsonString = '[{"my_id":"100002","my_confirmation":"682354682"},{"my_id":"100005","my_confirmation":"281735345"},{"my_id":"100009","my_confirmation":"361567356"}]';

var matches = JSON.parse(jsonString).some(function (obj) {
    return obj.my_id === '100005';
});

console.log(matches);

输出

true

On jsFiddle

or you could go even more funky like this

function myContains(jsonStr, key, value) {
    return JSON.parse(jsonStr).some(function (obj) {
        return obj[key] === value;
    });
}

var jsonString = '[{"my_id":"100002","my_confirmation":"682354682"},{"my_id":"100005","my_confirmation":"281735345"},{"my_id":"100009","my_confirmation":"361567356"}]';

console.log(myContains(jsonString, 'my_id', '100005'));

关于javascript - 为搜索到的键/值对返回 bool 值的最简单方法 (Javascript),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22443788/

相关文章:

javascript - 单击菜单后将单击事件附加到 HTML

javascript - AZERTY 与 QWERTY 上的键码检测

javascript - 如何在 JsDoc 中记录返回的数据

C# 动态将 JSON 对象转换为 XML

java - 如何从java上的json列表中获取选定的值

javascript - 使用jquery从html元素获取属性值

javascript - 在 try block 中使用异步函数

javascript - JavaScript 中的全名正则表达式也接受空格

javascript - 使用 Angularjs 删除后刷新联系人列表

javascript - 从多个 API 请求推送到全局数组