partition - nodef/extra-entries GitHub Wiki

Segregate values by test result.

Alternatives: partition, partitionAs.

function partition(x, ft)
// x:  entries
// ft: test function (v, k, x)
const entries = require('extra-entries');

var x = ["a", 1], ["b", 2], ["c", 3], ["d", 4](/nodef/extra-entries/wiki/"a",-1],-["b",-2],-["c",-3],-["d",-4);
entries.partition(x, v => v % 2 == 0).map(x => [...x]);
// → [ [ [ "b", 2 ], [ "d", 4 ] ], [ [ "a", 1 ], [ "c", 3 ] ] ]

var x = ["a", 1], ["b", 2], ["c", 3], ["d", 4], ["e", 5](/nodef/extra-entries/wiki/"a",-1],-["b",-2],-["c",-3],-["d",-4],-["e",-5);
entries.partition(x, v => v % 2 == 1).map(x => [...x]);
// → [ [ [ "a", 1 ], [ "c", 3 ], [ "e", 5 ] ], [ [ "b", 2 ], [ "d", 4 ] ] ]

References