我有一个JavaScript数组,其中填充了对象,并且想要删除每个没有数据的对象。它可能像这样:
var myArray = [ {id: "28b", text:"Phill"},
{id: "12c", text:"Peter"},
{id: "43f", text:"Ashley"},
{id: "43f", text:"Ashley"},
{id: "", text:""},
{id: "9a", text:"James"},
{id: "", text:""},
{id: "28b", text:"Phill"}
];
我已经使用来自underscore.js的_.uniq
从我的数组中移除所有重复项,这很好用。尽管它们是唯一的,但当我动态填充数据时(因为空数据集),总是会留下一个空对象。我已经尝试过如下所述的_.without
函数:在JavaScript中删除数组中的空元素,但它不起作用。这是我的尝试:
myArray = _.without(myArray, {id:"",text:""});
数组应该长这样:
[ {id: "28b", text:"Phill"},
{id: "12c", text:"Peter"},
{id: "43f", text:"Ashley"},
{id: "9a", text:"James"},
];
如果有使用jQuery的解决方案,我也会用这个库。
{id:"",text:""}
不是空对象。如果您想要删除其中任何一个出现的对象,请进行过滤。我猜,最终您想要删除任何没有指定id
的对象。 - A. Wolff