JSFiddle - React, Tailwind, and code Playground

JavaScript

const array1 = [2,1,3,5,2,1,3,5];
    const array2 = [4,3,2,6,7,4,3,2,6,7];
    
    function diff(arr1, arr2) {
        const dontAddDuplicates = true;
        arr1.sort();
        arr2.sort();
        let a1 = [];
        let a2 = [];
        let i = 0;
        let j = 0;
        while (i < array1.length || j < array2.length) {
        	if (i >= arr1.length) {
             if (!dontAddDuplicates || (a2.length == 0 || a2[a2.length - 1] != arr2[j])) {
                a2.push(arr2[j]);
             }
             j++;
          } else if (j >= array2.length) {
             if (!dontAddDuplicates || (a1.length == 0 || a1[a1.length - 1] != arr1[i])) {
                a1.push(arr1[i]);
             }
             i++;
          }  else if (arr1[i] < arr2[j]) {
             if (!dontAddDuplicates || (a1.length == 0 || a1[a1.length - 1] != arr1[i])) {
                a1.push(arr1[i]);
             }
             i++;
          } else if (arr2[j] < arr1[i]) {
             if (!dontAddDuplicates || (a2.length == 0 || a2[a2.length - 1] != arr2[j])) {
                a2.push(arr2[j]);
             }
             j++;
          } else {
             // Same value, do nothing
             i++;
             j++;
          }
        }
        return [a1, a2];
    }

    console.log(diff(array1, array2));