“新集”在nodejs中返回一个空集

时间:2019-03-23 12:33:33

标签: node.js puppeteer

我正在使用n的以下函数测试某些网站,突然“ new Set”开始返回空数组,如下所示:

function collectAllSameOriginAnchorsDeep(sameOrigin = true) {

const allElements = [];

// Some coding here 

const filtered = allElements

// Some coding here 

console.log(filtered) // The items are printed in the log probably


return Array.from(new Set(filtered)); // Nothing is getting returned!
}

如果我用return Array.from(filtered)替换最后一行,那么它可以正常工作,但是我使用“设置”来删除所有重复的值。

1 个答案:

答案 0 :(得分:0)

因为Set接收可迭代对象作为其输入参数,并将分别创建set对象。因此,我们可以从一个数组构造一个集合-但它将只包含该数组中不同的元素,也就是没有重复的元素。

当然,我们还可以使用Array.from()方法将集合转换回数组。

let set = new Set([1,2,3]); // {1,2,3}
let arr = Array.from(set);//[1,2,3]

因此,您需要将集合转换回array,请检查here以了解set和array之间的区别。

希望这对您有帮助!