has()为多维数组集返回false?

时间:2019-05-26 08:56:48

标签: javascript set

我创建了一组二维数组,如下所示:

let set = new Set([[1, 2], [4, 6]]);

现在,当我执行set.has([1, 2])时,它将返回false。 我该如何实现?

1 个答案:

答案 0 :(得分:3)

如果要比较对象或数组(不是基元,也不是===),请首先将Set中的所有内容字符串化:

const set = new Set([[1, 2], [4, 6]]);
const setStringified = new Set([...set].map(JSON.stringify));

console.log(setStringified.has(JSON.stringify([1, 2])));