is-weakset Version Badge

github actions coverage License Downloads

npm badge

Is this value a JS WeakSet? This module works cross-realm/iframe, and despite ES6 @@toStringTag.

Example

```js var isWeakSet = require('is-weakset'); assert(!isWeakSet(function () {})); assert(!isWeakSet(null)); assert(!isWeakSet(function* () { yield 42; return Infinity; }); assert(!isWeakSet(Symbol('foo'))); assert(!isWeakSet(1n)); assert(!isWeakSet(Object(1n)));

assert(!isWeakSet(new Set())); assert(!isWeakSet(new WeakMap())); assert(!isWeakSet(new Map()));

assert(isWeakSet(new WeakSet()));

class MyWeakSet extends WeakSet {} assert(isWeakSet(new MyWeakSet())); ```

Tests

Simply clone the repo, npm install, and run npm test