JavaScript ci consente oggi di trovare le differenze tra due array in modo più semplice.
Possiamo usare l'oggetto Set
:
function arrayDiff(a, b) {
let s1 = new Set(a);
let s2 = new Set(b);
let diff = [];
s1.forEach(function(value) {
if(!s2.has(value)) {
diff.push(value);
}
});
s2.forEach(function(val) {
if(!s1.has(val)) {
diff.push(val);
}
});
s1.clear();
s2.clear();
return diff;
}