写一个函数,传的参数是数组对象和一个数组是数组对象中的某几个key,数组需遍历传入的key值,若数组遍历key的值全部是空,则返回出数组,内容为这个值全为空的key
时间: 2024-12-25 10:23:50 浏览: 4
你可以编写一个JavaScript函数来完成这个任务,下面是一个示例:
```javascript
function findEmptyKeys(objArray, keysToCheck) {
return objArray.filter(obj => {
// 检查obj的所有keys是否都在keysToCheck数组中
const objKeys = Object.keys(obj);
const intersection = keysToCheck.filter(key => objKeys.includes(key));
// 如果intersection等于keysToCheck,说明所有指定键都是空
if (intersection.length === keysToCheck.length) {
return true;
}
// 否则继续检查下一个对象
return false;
}).map(obj => keysToCheck);
}
// 使用示例
const arrayOfObjects = [
{ name: 'John', age: '', city: 'New York' },
{ name: 'Jane', age: '30', city: '' },
{ name: '', age: '45', city: 'Los Angeles' }
];
const keysToCheck = ['name', 'age'];
console.log(findEmptyKeys(arrayOfObjects, keysToCheck)); // 输出: [ { name: '', age: '' } ]
```
这个函数首先使用`filter()`遍历`objArray`,对于每个对象,它获取该对象的所有键并找出与`keysToCheck`匹配的部分。如果所有指定键都是空,就将包含这些键的对象添加到结果数组中。
阅读全文