問題
以下コードを実行すると、コンソールには何が出力されるでしょうか?
JavaScript
const bool1 = false;
const name = bool1 || "Hello World";
console.log(name);
答え
Hello World
解説
||
演算子は、
左側がfalseなら、右側の値を返す。
左側がtrue判定なら、右側の値を返す。
という特性があります。
先程の問題だと、
左側の値である変数bool1
はfalse
なので、
右側の値Hello World
が変数name
に代入されているのです。
const name = bool1 || "Hello World";
テスト
変数output
には何が代入されるでしょうか?
const output = "val2" || "こんにちは";
答え
val2
が代入される。
(文字列"val2"はtrue
判定だから。)
おまけ
&&
演算子は、
左側がtrue
なら、右側の値を返す。
左側がfalse
なら、左側の値を返す。
という特性があります。