• F
  • E
  • R
  • u
  • d
  • e
  • n

[codewars] Array.diff

2018-06-02 (18일 전)algorithm
[codewars] Array.diff

Your goal in this kata is to implement a difference function, which subtracts one list from another and returns the result.

It should remove all values from list a, which are present in list b.

array_diff([1,2],[1]) == [2]

If a value is present in b, all of its occurrences must be removed from the other:

array_diff([1,2,2,2,3],[2]) == [1,3]

my answer

const array_diff = (a, b) => a.filter(x => b.indexOf(x) === -1 );

best practice

function array_diff(a, b) {
  return a.filter(e => !b.includes(e));
}