Immutablejs:一种将映射键转换为数组的线性代码?

Immutablejs: One liner code to convert keys of a map into array?

来自文档:Map#keys

我获取了 Map 的键并循环遍历它以将它们转换为数组。是否有一行代码可以将这些键干净地转换为数组?

您可以使用 keySeq 而不是 keysIndexedSeqtoArray 方法:

var map = Immutable.fromJS({
  a: 1,
  b: 2,
  c: {
    d: "asdf"
  }
})

var arr = map.keySeq().toArray()

如果你会用ES6:

var map = Immutable.fromJS({
  a: 1,
  b: 2,
  c: {
    d: "asdf"
  }
});

var [...arr] = map.keys();
console.log(arr); // ["a", "b", "c"]

或者

var arr = Array.from(map.keys());
console.log(arr); // ["a", "b", "c"]