es-toolkit
Version:
A state-of-the-art, high-performance JavaScript utility library with a small bundle size and strong type annotations.
12 lines (9 loc) • 430 B
JavaScript
import { differenceWith } from './differenceWith.mjs';
import { intersectionWith } from './intersectionWith.mjs';
import { unionWith } from './unionWith.mjs';
function xorWith(arr1, arr2, areElementsEqual) {
const union = unionWith(arr1, arr2, areElementsEqual);
const intersection = intersectionWith(arr1, arr2, areElementsEqual);
return differenceWith(union, intersection, areElementsEqual);
}
export { xorWith };