如何在Javascript中从数组中删除带有空字符串的对象?

如何在Javascript中从数组中删除带有空字符串的对象?,javascript,arrays,object,Javascript,Arrays,Object,我有一个像这样的数组 var array = [{"Capital":5},{"":""},{"Kichler":6},{"Minka Aire":4},{"Savoy House":2},{"":""},{"":""}] 我想删除所有带有空字符串的对象,这样看起来就像这样 var array = [{"Capital":5},{"Kichler":6},{"Minka Aire":4},{"Savoy House":2}] 我尝试编写一个for循环,将数组中的每个项与{“”:“”}进行比较

我有一个像这样的数组

var array = [{"Capital":5},{"":""},{"Kichler":6},{"Minka Aire":4},{"Savoy House":2},{"":""},{"":""}]
我想删除所有带有空字符串的对象,这样看起来就像这样

var array = [{"Capital":5},{"Kichler":6},{"Minka Aire":4},{"Savoy House":2}]
我尝试编写一个for循环,将数组中的每个项与{“”:“”}进行比较,但即使对于那些空对象,它仍然返回false


任何帮助都将不胜感激,提前感谢

我已经更新了我的答案,因为有一个非常简短的选项,它的作用类似于魅力:

const数组=[{“Capital”:5},{“:”},{“Kichler”:6},{“Minka Aire”:4},{“Savoy House”:2},{“:”},{“:”,{“:”}];
const result=array.filter(e=>e[“”]!=“”);
控制台日志(结果)您可以使用该方法创建一个新数组,其中包含通过所提供函数实现的测试的所有元素。
然后从对象中解压键值并返回空白键值的基本信息
var数组=[{“大写”:5},{“:”},{“Kichler”:6},{“Minka Aire”:4},{“Savoy House”:2},{“:”},{“:”},{“:”}]
让result=array.filter((i)=>{
让[key,value]=(Object.entries(i)).flat();
返回!(键=“”&值=“”);
});

控制台日志(结果)
如果您有一个对象,并且希望检查空字符串是否是键,则obj
中的
”将返回true,因此请使用该事实以及
数组。filter(obj=>{})
,以筛选出
中的所有对象在obj
Hi中,我很肯定研究会表明,在Javascript中从数组中删除任何类型的条目通常是通过
filter
完成的。没有做足够的研究是一个有效的否决票原因(悬停在否决票按钮上回答问题),因此研究将帮助您避免此类否决票。