ImmmutalbeJS:过滤地图列表

ImmmutalbeJS: filtering a List of Maps

假设我有 ListMap 类型的项目。 我想过滤列表。 根据文档,我会做类似的事情:

people.filter(person =>
  person.get('name') === 'David' &&
  person.get('lastName') === 'Smith');

我宁愿写一些不那么冗长的东西来达到同样的目的:

people.filter({ name: 'David', lastName: 'Smith' });

(LoDash 风格)

有这样的方法吗?还有比第一个例子更优雅的吗?

试试这个:

let fullNameList = Immutable.List([{name: 'David', lastName: 'Smith'}, {name: 'David', lastName: 'King'}, {name: 'Some', lastName: 'Dude'}]);

let firstName = Immutable.Map({name: 'David'});

let result = fullNameList.filter(fullName=>firstName.isSubset(fullName));