在像这样的 Javascript 数组中获取所有具有假值的对象键的正确方法是什么:
[
{ unknownkey1 : false },
{ unknownkey2 : true },
{ unknownkey3 : false },
{ unknownkey4 : true },
{ unknownkey5 : false },
{ unknownkey6 : true }
]
结果应该是一个包含所有具有假值的键的数组。
我想要的是一个更简洁的解决方案:
for(var i = 0; i < results.length; i++ ){
for ( key in results[i] ) {
if ( results[i].hasOwnProperty( key ) && results[i][key] === false ){
console.log( key );
}
}
}
如果该值不为假,则它包含另一个对象。但它们不是必需的,如果可能的话,我更喜欢一种忽略子对象的方法。
最佳答案
您想遍历数组,然后遍历每个对象中的每个键,然后将那些 false
键存储在另一个数组中。非常简单。
var data = [
{ unknownkey1 : false },
{ unknownkey2 : true },
{ unknownkey3 : false },
{ unknownkey4 : true },
{ unknownkey5 : false },
{ unknownkey6 : true }
];
var keys = [];
data.forEach(function(object) {
for (var key in object) {
if (object[key] === false) keys.push(key);
}
});
关于javascript - 如何在数组中查找所有具有假值的对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23138274/