【JavaScript】Array.prototype.filter()で条件に一致した配列の要素を削除する方法


厳密に言うと、条件に一致しない配列の要素を取得しない処理になる。

例えば配列から偶数を削除する処理を書くとき。
奇数を取得したいのなら条件をval % 2 == 1と書くべきだが、今回は偶数を取得したくないので不等価演算子!を使ってval % 2 != 0と書くことでこの処理が偶数の値を取得したくないという意図を読み取ることができる。

delete_even.js
const array = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
const odd = array.filter(val => val % 2 != 0);

console.log(odd); //[1, 3, 5, 7, 9]

条件がval % 2 == 1val % 2 != 0も結果は一緒だけど処理の目的が分かりやすいのは後者だと思う。