使用UnderscoreJS从数组中删除一个元素

144

假设我有以下代码:

var arr = [{id:1,name:'a'},{id:2,name:'b'},{id:3,name:'c'}];

我想要从该数组中移除 id=3 的元素。是否有一种方法可以不使用splice来实现呢?也许可以使用underscore或类似的东西吗?

谢谢!


如果您不想创建一个新的数组,那么切片是唯一的选择。我敢打赌underscore也使用它(如果存在这样的方法)。 - Felix Kling
6
拼接有什么问题? - Šime Vidas
你查看过 Underscore 的参考文档了吗? - Šime Vidas
只使用纯JavaScript,这是按对象属性从数组中删除对象的副本。 - Felix Kling
5
好的,它不是重复的,因为它有下划线标签。 - Garis M Suero
显示剩余2条评论
12个回答

-1

lodash 可以被使用:

_.compact(arr);

下划线(Underscore)也有compact。更重要的是,这并没有回答问题,因为_.compact仅删除 falsy 值。 - Julian

-1
你可以使用Underscore的reject方法,以下代码将返回一个新数组,其中不包含特定匹配的元素。
arr = _.reject(arr, function(objArr){ return objArr.id == 3; });

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接