根据属性的值从列表中删除对象的最简单的方法是什么?
我正在寻找相当于MongoDB中的$pull.
我的列表看起来很简单:
[{a: '1',b: '1'},{a: '2',b: '2'}]
而且我想从数组中删除属性设置为’1’的对象.在MongoDB中,我会这样做:
Model.update({_id: getCorrectParentObj},{ $pull: {listIDeleteFrom: { a: '1' } } },(err,result)=>{});
如何使用ImmutableJS获得相同的结果?
解决方法
你可以简单地说
filter
不可变的列表:
var test = Immutable.List.of(Immutable.Map({a: '1'}),Immutable.Map({a: '2'})); test = test.filter(function(item) { return item.get('a') !== '1' });
但是,对非空列表进行过滤将导致不同的不可变列表,因此您可能需要首先检查{a:1}的发生.
if (test.some(function(item) { return item.get('a') === '1'; })) { test = test.filter(function(item) { return item.get('a') !== '1' }); }
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。