filter$ - nodef/extra-set GitHub Wiki

Keep values which pass a test.

Alternatives: filter, filter$. Similar: map, reduce, filter, filterAt, reject, rejectAt.

function filter$(x, ft)
// x:  a set (updated)
// ft: test function (v, v, x)
const set = require('extra-set');

var x = new Set([1, 2, 3, 4, 5]);
set.filter$(x, v => v % 2 === 1);
// → Set(3) { 1, 3, 5 }

x;
// → Set(3) { 1, 3, 5 }

var x = new Set([1, 2, 3, 4, 5]);
set.filter$(x, v => v % 2 === 0);
// → Set(2) { 2, 4 }

References