How to find elements which are in array1 and not in array2 in JavaScript

2 Answers

0 votes
const arr1 = [1, 3, 8,  9, 17, 18];
const arr2 = [1, 8, 5, 12, 18, 19, 100, 120];

let notinarr2 = arr1.filter(function(obj) { return arr2.indexOf(obj) == -1; });
        
console.log(notinarr2);
  
  
  
/*
run:
  
[ 3, 9, 17 ]
  
*/

 



answered Jul 24, 2020 by avibootz
0 votes
const arr1 = [1, 3, 8,  9, 17, 18];
const arr2 = [1, 8, 5, 12, 18, 19, 100, 120];

var result = [...new Set(arr1)].filter(item => !arr2.includes(item));

console.log(result); 





/*
run:

[3, 9, 17]

*/

 



answered Feb 14, 2021 by avibootz
...