我有一大堆对象,我需要获得具有属性def
设置的对象。没有价值......提前谢谢。
您可以使用hasOwnProperty检查属性是否存在,Array.prototype.filter
仅过滤那些项目。
objArray = [ { def: 1, bar: 2}, { foo: 3, bar: 4}, { def: 5, bar: 6} ];
var result = objArray.filter(item => item.hasOwnProperty('def'));
console.log(result);
对于es5兼容性
objArray = [{
def: 1,
bar: 2
}, {
foo: 3,
bar: 4
}, {
def: 5,
bar: 6
}];
var result = objArray.filter(function(item) {
return item.hasOwnProperty('def')
});
console.log(result);
尽管您可以尝试以下代码,但在lodash中没有这样的功能
`let aFilteredArray = [];
_.forEach(YourArray,function(oElement){
if(!_.isEmpty(oElement.def)){
aFilteredArray.push(oElement);
}
};