gpt4 book ai didi

javascript - 仅当所有对象中的值为空时,才从对象数组中删除空值

转载 作者:行者123 更新时间:2023-12-05 00:43:00 25 4
gpt4 key购买 nike

我正在尝试删除数组中的空字符串。

这是我的数组:

let array = [{name:'John',age:'18',address:''},{name:'George',age:'',address:''},{name:'Kevin',age:'25',address:''}]

只有在所有对象中为空时,我才想删除空字符串值。

期望的结果:

[{name:'John',age:'18'},{name:'George',age:''},{name:'Kevin',age:'25'}]

这就是我所做的,但它删除了每个空字符串值:

 for (let i = 0; i < array.length; i++) {
array[i] = Object.fromEntries(Object.entries(array[i]).filter(([_, v]) => v != ''));
}

提前致谢,

最佳答案

如果您不介意改变原始 array 对象。这是一个利用一些数组函数的解决方案。

let array = [
{ name: 'John', age: '18', address: '' },
{ name: 'George', age: '', address: '' },
{ name: 'Kevin', age: '25', address: '' }
]

Object.keys(array[0])
.filter(k => array.every(obj => !obj[k]))
.forEach(k => array.forEach(obj => delete obj[k]));

console.log(array);

关于javascript - 仅当所有对象中的值为空时,才从对象数组中删除空值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71853948/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com