javascript - 检查 JSON 中是否存在值

标签 javascript jquery json

我正在执行一个返回 JSON 的 ajax 调用,其中包括 3 个位置邮政编码。

这些邮政编码是:

value2.loc1_zip
value2.loc2_zip
value2.loc3_zip

然后,“搜索”表单返回搜索半径内的邮政编码列表。这些是:

zipback.zip_codes

每个邮政编码都在这里:

zipback.zip_codes.zip_code

我不知道如何检查是否 value2.loc1_zip , value2.loc2_zip ,或value2.loc3_zipzipback.zip_codes 列表中

我已经尝试过这个,但没有成功:

var grabbed_zips = zipback.zip_codes;
if (grabbed_zips.hasOwnProperty(value2.loc2_zip)) {
    ...stuff...
}

这是原始 JSON:

{"counselor_posts":[{"id":"1","firstName":"John","lastName":"Doe","loc1_zip":"30309"},{"id":"3","firstName":"Jeff","lastName":"Kim","loc1_zip":"30315"}]}

{"zip_codes":[{"zip_code":"30324","distance":4.484},{"zip_code":"30376","distance":4.298}]}

这是我正在使用的实际 jquery:

$.ajax({
    type: "GET",
    url: '...url..here...',
    dataType: "json",
    success: function(zipback) {
        var grabbed_zips = zipback.zip_codes;
        $.getJSON('/scripts/get_counselor.php', function(data2) {
            $.each(data2.counselor_posts, function(name2,value2) {
                if (grabbed_zips.hasOwnProperty(value2.loc3_zip)) {
                    $(".counselor-search-results").append(cat_html2);
                }

            });
         });
    }
});

最佳答案

您是否使用 $.parseJSON 来实例化 JSON 对象? $.parseJSON

这将帮助您管理对象。如果对象是一个列表,则:

var JSONZips = $.parseJSON('{"zips" : {"user1zip":94140, "user2zip": 94107}}');
JSONZips.zips.hasOwnProperty('user1zip');

这将返回 true。

如果您需要查找特定值,则:

function checkForValue(json, value) {
for (key in json) {
    if (typeof (json[key]) === "object") {
        return checkForValue(json[key], value);
    } else if (json[key] === value) {
        return true;
    }
}
return false;

}

希望这有帮助!

关于javascript - 检查 JSON 中是否存在值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21739609/

相关文章:

ios - 单个对象 json 解析 - 我做错了什么?

javascript - 将变量从代码后面传递到 javascript 未更新

jquery - 必填字段 - 验证不会显示在 Bootstrap 模式弹出窗口 MVC 中

javascript - Apache .htaccess 目录索引与 html5 视频

javascript - 解析嵌套的 JSON 并以特定格式显示

javascript - 使用 Select2 插件读取 JSON 文件

javascript - 将 Json 数据作为单个对象而不是一个长数组推送

javascript - 端点字符串保存在rails postgresql db中,无法在js前端中使用它们进行fetch()调用

Javascript 图像 src 没有改变

javascript - 单击功能未在 Jquery 中正确注册