symmetricDifference (original) (raw)
Obtain values not present in both arrays.
Similar: union, intersection, difference, symmetricDifference.
function symmetricDifference(x, y, fc, fm) // x: an array // y: another array // fc: compare function (a, b) // fm: map function (v, i, x)
⏱️ Compare function ⇒ O(n²).
const xarray = require('extra-array');
var x = [1, 2, 3, 4]; var y = [3, 4, 5]; xarray.symmetricDifference(x, y); // → [ 1, 2, 5 ]
var y = [-3, -4, -5]; xarray.symmetricDifference(x, y); // → [ // 1, 2, 3, 4, // -3, -4, -5 // ]
xarray.symmetricDifference(x, y, (a, b) => Math.abs(a) - Math.abs(b)); // → [ 1, 2, -5 ]
xarray.symmetricDifference(x, y, null, v => Math.abs(v)); // → [ 1, 2, -5 ]