概要: このチュートリアルでは、true と false の 2 つのリテラル値を持つ JavaScript ブール型について学習します。
JavaScript ブール型入門
JavaScript の boolean プリミティブ型には、true と false の 2 つのリテラル値があります。
次の例では、2 つの変数を宣言し、それらの値を true と false に初期化しています。
let completed = true;
let running = false;Code language: JavaScript (javascript)ブール値のリテラル値は大文字と小文字が区別されます。つまり、True と False は有効な識別子ですが、boolean 値ではありません。
JavaScript では、他の型の値をブール値にキャストできます。ブール値以外の値をブール値にキャストするには、組み込みの Boolean() 関数を使用します。例えば
let error = 'An error occurred';
let hasError = Boolean(error);
console.log(hasError);Code language: JavaScript (javascript)出力
trueCode language: JavaScript (javascript)仕組み
- まず、リテラル文字列
'An error occurred'を保持する変数errorを宣言します。 - 次に、
Boolean()関数を使用して、error変数をブール値にキャストします。 - 3 番目に、
hasError変数の値をコンソールに出力します。
error 変数は空でない文字列を保持しているため、Boolean() 関数はその値を true にキャストします。
次の表は、Boolean() 関数が他の型の値をブール値にどのようにキャストするかを示しています。
| データ型 | true に変換される値 | false に変換される値 |
|---|---|---|
| 文字列 | 空でない文字列 | “” (空文字列) |
| 数値 | ゼロ以外の数値 | 0、NaN |
| オブジェクト | 任意のオブジェクト | null |
| undefined | (該当なし) | undefined |
この表は重要です。なぜなら、一部のステートメントは Boolean() 関数を使用して、ブール値以外の値を自動的にブール値にキャストするからです。
たとえば、if ステートメントは、条件が true の場合にブロックを実行します。ブール値以外の値を使用すると、Boolean() 関数を使用して、その値を暗黙的にブール値にキャストします。
if ステートメントについては、if チュートリアルで学習することに注意してください。
次の例を参照してください。
let error = 'An error occurred';
if (error) {
console.log(error);
}Code language: JavaScript (javascript)出力
An error occurredこの例では、error 変数は空でない文字列を保持しているため、if ステートメントはその値を true と評価します。したがって、console.log(error) を実行して error をコンソールに出力します。
error 変数の値を空の文字列("")に変更すると、if ステートメントがそれを false と評価するため、出力には何も表示されません。
let error = '';
if (error) {
console.log(error);
}Code language: JavaScript (javascript)まとめ
- JavaScript の
boolean型には、trueとfalseの 2 つの値があります。 - ブール値以外の値をブール値にキャストするには、
Boolean()関数を使用します。 - 一部のステートメントは、ブール値以外の値を暗黙的にブール値にキャストします。