遍历TypeScript中的immutablejs映射值

时间:2018-09-11 06:32:40

标签: typescript immutable.js

我想使用for循环遍历immutable.js Map的值,因为这是TypeScript中的首选方式,尤其是在迭代器协议中。我正在寻找类似的东西

const map = Map<string, number>();
for (const num of map.values()) {
    ...
}

但是,map.values()“不是数组,没有字符串,并且没有Symbol.iterator方法”。

1 个答案:

答案 0 :(得分:0)

使用用户 valueSeq()方法而不是 values()来遍历地图。

您可以使用 forEach for ,如下所示

const map1 = Immutable.Map({
  abc: 9999,
  def: 1111,
  ghi: 4444,
  jkl: 23
});

map1.valueSeq().forEach(v => console.log(v));

for (const num of map1.valueSeq()) {
  console.log('num ', num)
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/immutable/3.8.2/immutable.js"></script>