js,求大神指导 怎么删除数组型json里不符合条件的元素

2025-05-18 07:27:10
推荐回答(3个)
回答1:






白菜编辑部



var array = [
            {
                id : 1,
                name : '三',
                flag : 1
            },
            {
                id : 2,
                name : '张',
                flag : undefined
            },
            {
                id : 3,
                name : undefined,
                flag : 1
            }
    ];
    
    var result = [];
    for ( var i = 0; i < array.length; i++)
    {
    var o = {};
    var obj = array[i];
    for ( var p in obj)
    {
    if (typeof obj[p] !== 'undefined')
    {
    o[p] = obj[p];
    }
    }
    result.push (o);
    }
    
    console.log (result);




回答2:

for(var i in a){
     for(var k in a[i])
     !a[i][k] && delete a[i][k];
    }
    console.info(a);

 这个就可以满足你的需求啊。你自己试试!

我不管你里边有什么属性,只要有undefined类型,直接干掉

回答3:

var a=[{"id":"4","flag":1},{"id":"3"},{"id":"2"}];,有的里面没有flag
var h= $.parseJSON(a); parse(h);
function parse(json) {
var result = [], setBody = $.map(json, function(item) {
if(typeof item.flag == 'undefined')
return { "get" : [ { "id" : item.id] };
return { "get" : [ { "id" : item.id,"flag" : item.flag ] };
});
return result;
}