Source code

Revision control

Copy as Markdown

Other Tools

// The argument to Set may contain a value multiple times. Duplicates are discarded.
var s = new Set(["testing", "testing", 123]);
assertEq(s.size, 2);
var values = [undefined, null, false, NaN, 0, -0, 6.022e23, -Infinity, "", "xyzzy", {}, Math.sin];
for (let v of values) {
var a = [v, {}, {}, {}, v, {}, v, v];
s = new Set(a);
assertEq(s.size, 5);
assertEq(s.has(v), true);
}