概要: このチュートリアルでは、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)
出力
true
Code 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()
関数を使用します。 - 一部のステートメントは、ブール値以外の値を暗黙的にブール値にキャストします。