JavaScriptのAND演算子とOR演算子

JavaScriptのAND演算子とOR演算子の式の評価結果についてまとめておく。

AND演算子とOR演算子はショートサーキットであり、評価結果が決まる式に出会うと、それ以降は評価されない。

  • AND演算子はfalsyな結果を返す式があれば、これが式全体の結果となる。
  • AND演算子はすべての式がtruthyな結果を返す場合は、最後の式が式全体の結果となる。
  • OR演算子はtruthyな結果を返す式があれば、これが式全体の結果となる。
  • OR演算子はすべての式がfalsyな結果を返す場合は、最後の式が式全体の結果となる。
let a = 1;
let b = 2;
let c = 3;
let d = 4;

console.log(a && b && c && d); 
// dの評価結果4が式全体の評価結果となる
console.log(a || b || c || d); 
// 1が表示される

a = 1;
b = 0;
c = 3;
d = 4;

console.log(a && b && c && d); 
// 0が表示される

a = 0;
b = 0;
c = 3;
d = 4;

console.log(a || b || c || d); 
// 3が表示される

a = 0;
b = 0;
c = 0;
d = 0;

console.log(a || b || c || d); 
// dの評価結果0が式全体の評価結果となる

コメント