有没有一种方法来测试两个(或更多) WeakSets是否相等?所以,我想要这段代码打印出true
var a = new WeakSet();
var b = new WeakSet();
a.add([3]);
b.add([3]);
console.log(isEqual(a, b)); // -> true发布于 2021-05-25 09:24:40
简单的答案--你不能。WeakSet的不可计数,所以没有办法测试WeakSet中值的相等性。
目前,您唯一的选择是在这里使用Array。
看看这个答案。
如果您想要使用这一提案,请参见Set。
虽然我怀疑您的用例是否需要这种内存管理,但您也可以将WeakReferences视为解决方案的一部分。
顺便提一句,WeakSet的实际用例很少,所以您可能不应该满足于它们。
https://stackoverflow.com/questions/67684725
复制相似问题