获取JavaScript Map的值作为数组?

11

有没有一种快速的方法将JavaScript Map的值作为数组获取?

const map:Map<number, string> = new Map()
map.set(1, '1')
map.set(2, '2')

然后类似 Array.from(map.values()) 这样的东西会得到 ['1','2'] …我敢肯定我以前见过这样的东西…?


3
[...yourMap.values()] - Yevhen Horbunkov
这是一个迭代器... - Ole
1
你在问题中提出的建议同样有效:Array.from(map.values()) - Paul
1
@Ole map.values() 是一个迭代器。[...someIterator] 是一个数组。 - Paul
@Paul - 好的,我喜欢... - 谢谢! - Ole
@YevgenGorbunkov 对不起,我没有正确理解语法。非常酷! - Ole
2个回答

17

目前运行正常。 Array.from 也可以接受可迭代的值。

const map = new Map;

map.set(1, '1');
map.set(2, '2');

console.log(Array.from(map.values()));


7
另一个选择可以使用展开语法 (...)。

const map = new Map().set(4, '4').set(2, '2');
console.log([...map.values()]);


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接