🏹
配列内のすべての値の真偽値をチェックする方法
はじめに
Javascriptでは全ての値はtruthyかfalsyのいずれかです。実際にコードを書いていく中で、条件分岐を書いたりすることは多いので、重要なことです。今回この記事では、Javascriptの配列内で、値がtruthyかfalsyかをチェックする方法に関して解説していきます。
truthyとfalsy
先にtruthyとfalsyに関して説明します。Boolean関数で値を真偽値に変換した時に、falseが返ってくる値のことをfalsy、trueが返ってくることをtruthyと呼びます。undefined、null、0、-0、NaN、0n、空文字はFalsyです。それ以外はtruthyです。
例
それでは配列の値の真偽値をコードで確認しながら見ていきましょう。
・everyメソッドを使う。
everyメソッドは配列の全ての要素が指定された特定の条件を満たすどうかを確認します。返り値としてはブール値を渡します。
const array1 = [2, '文字', true, {}];
const areAllTruthy = array1.every(value => Boolean(value));
console.log(areAllTruthy); //出力: true
const array2 = ["", '文字', true, {}];
const areAllTruthy = array2.every(value => Boolean(value));
console.log(areAllTruthy); //出力: false
・someメソッドを使う
someメソッドは配列のいずれかの要素が指定された条件を満たすかどうかを確認します。返り値としてはブール値を渡します。
const array = ["", '文字', false, NaN];
const isAnyTruthy = array.some(value => Boolean(value));
console.log(isAnyTruthy); //出力: true
おわりに
今回は配列内の値がtruthyかfalsyかを確認する方法についてまとめました。これらの方法を使用することで、配列内の値に基づいた条件分岐などが手軽に行えるようになります。最後まで読んでいただきありがとうございました。
参考資料
Discussion
少し関連して、ぼくも真偽値の振り分けにチャレンジしてみました。
demo code.