ImmutableJS过滤器结果没有键,返回对象

时间:2016-12-29 22:39:11

标签: javascript immutable.js

我将以下数据结构作为ImmutableJS Map()

{
  kXTy9K7XdzfJ73H7N: {
    _id: 'kXTy9K7XdzfJ73H7N',
    username: 'john'
  },
  Tx7aW2xw3nF3QCFhA: {
    _id: 'Tx7aW2xw3nF3QCFhA',
    username: 'oliver'
  }
}

我也有这个密钥:kXTy9K7XdzfJ73H7N,我想将其从地图中删除,所以剩下的就是:

{
  _id: 'Tx7aW2xw3nF3QCFhA',
  username: 'oliver'
}

我已经尝试了filterNotmapKeys的组合,但无济于事。

2 个答案:

答案 0 :(得分:2)

你可以这样做:

users.find((v, k) => k !== 'kXTy9K7XdzfJ73H7N')

或者您可以更改当前的方法:

users.delete('kXTy9K7XdzfJ73H7N').first()

first()方法来自Iterable,因此无需使用toList()将地图转换为列表。

答案 1 :(得分:0)

解决...

users.delete('kXTy9K7XdzfJ73H7N').toList().first()

不确定这是否是最优雅的方式,所以请说是否有更好的解决方案。