检查JSON对象中的项是否缺失

时间:2017-03-08 14:32:14

标签: javascript jquery json

我认为我可以执行以下操作来检查数据值是否为null,然后替换其他内容。

$.ajax({
    url: 'php/parsedjson.php',
    dataType: 'json',
    success: function(data) {
        $.each(data, function(index, val) {
            if (data[index].Manufacturers[0].Name != null){
             var manufacturer = data[index].Manufacturers[0].Name;}
             else{ var manufacturer ="MISSING"}
        });
    }
})

但是,如果JSON中未提供数据值,则会引发错误Uncaught TypeError: Cannot read property 'Name' of undefined

如何检查是否有值来防止这种情况发生?

1 个答案:

答案 0 :(得分:1)

应该很容易:

$.ajax({
    url: 'php/parsedjson.php',
    dataType: 'json',
    success: function(data) {
        $.each(data, function(index, val) {
            if (data[index].Manufacturers[0] && data[index].Manufacturers[0].Name){
             var manufacturer = data[index].Manufacturers[0].Name;}
             else{ var manufacturer ="MISSING"}
        });
    }
});

在获取名称之前,你还必须检查数据[index] .Manufacturers [0],以避免空指针。