partitionAs - nodef/extra-entries GitHub Wiki

Segregate entries by similarity.

Alternatives: partition, partitionAs.

function partitionAs(x, fm)
// x:  entries
// fm: map 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.partitionAs(x, v => v % 2 == 0);
// → Map(2) {
// →   false => Map(2) { "a" => 1, "c" => 3 },
// →   true => Map(2) { "b" => 2, "d" => 4 }
// → }

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.partitionAs(x, v => v % 3);
// → Map(3) {
// →   1 => Map(2) { "a" => 1, "d" => 4 },
// →   2 => Map(2) { "b" => 2, "e" => 5 },
// →   0 => Map(1) { "c" => 3 }
// → }

References