使用 JavaScript-Iterables 和 Underscore.js

Using JavaScript-Iterables with Underscore.js

我想使用 JS6 的新功能 Set-object in conjunction with Underscore。据我所知 JavaScript 支持一个叫做“迭代器和生成器”的概念。以下代码不起作用...

var omega = new Set([1, 2, 3, 4, 5, 6]);
var filtered = _.(omega).filter(even); // filtered should be of type set

...我的解决方法如下...

var omega = new Set([1, 2, 3, 4, 5, 6]);
var filtered = new Set(_.([...omega]).filter(even));

下划线支持可迭代对象吗?如果不是,避免键入 [...myIterable] 并保留设置数据类型的最优雅方法是什么?

Underscore 尚不支持 ES6 迭代器。 https://github.com/jashkenas/underscore/issues/2147

Underscore 需要能够理解您传递给它的内容,因此首先将可迭代对象转换为数组的解决方法似乎是最好的方法。