Skip to content
Subhajit Sahu edited this page Dec 22, 2022 · 10 revisions

Combine matching ientries from all ientries.


function zip(xs, fm, ft, vd?)
// xs: all ientries
// fm: map function (vs, k)
// ft: end function (dones) [some]
// vd: default value
const ientries = require('extra-ientries');
const array = require("extra-array");

var x = [["a", 1], ["b", 2], ["c", 3]];
var y = [["a", 10], ["b", 20]];
[...ientries.zip([x, y])];
// → [ [ "a", [ 1, 10 ] ], [ "b", [ 2, 20 ] ] ] (shortest)

[...ientries.zip([x, y], ([a, b]) => a + b)];
// → [ [ "a", 11 ], [ "b", 22 ] ]

[...ientries.zip([x, y], null, array.some)];
// → [ [ "a", [ 1, 10 ] ], [ "b", [ 2, 20 ] ] ] (shortest)

[...ientries.zip([x, y], null, array.every, 0)];
// → [ [ "a", [ 1, 10 ] ], [ "b", [ 2, 20 ] ], [ "c", [ 3, 0 ] ] ] (longest)


References

Clone this wiki locally