过滤掉非唯一值以在JavaScript中仅出现一次

我们有一个包含一系列重复出现的重复值的文字数组,如下所示:

const arr = [1, 4, 3, 3, 1, 3, 2, 4, 2, 1, 4, 4];

我们需要编写一个接受此数组的JavaScript函数,并从原始数组中选择所有重复项,并且仅选择一次。

因此,对于上述数组,输出应为-

const output = [1, 4, 3, 2];

示例

为此的代码将是-

const arr = [1, 4, 3, 3, 1, 3, 2, 4, 2, 1, 4, 4];
const removeDuplicate = arr => {
   const res = [];
   for(let i = 0; i < arr.length; i++){
      if(arr.indexOf(arr[i]) !== arr.lastIndexOf(arr[i])){
         if(!res.includes(arr[i])){
            res.push(arr[i]);
         };
      };
   };
   return res;
};
console.log(removeDuplicate(arr));

输出结果

控制台中的输出-

[1, 4, 3, 2]