現代JavaScript


皆さんこんにちはAydenです
『Modern JavaScript Deep Dive』でJavaScriptを学びました混同されたコンテンツと新しいシナリオの内容について🤓

9.4短縮評価(p.118)

    // 논리곱
    let finished = true;
    let message = "";
    message = finished && "완료";
    console.log(message); // => '완료'

    // 논리합
    finished = false;
    message = finished || "미완료";
    console.log(message); // => '미완료'
論理演算子は基本的に左から右になります.論理乗算子(&&)は、2つの被演算子がtrueの場合にtrueを返します.前の被演算子finishはtrueと評価された.後の「完了」が演算子によって評価されてこそ、真偽を判断することができます.すなわち,論理式の結果を決定する被演算子は後の演算子である.したがって、論理乗算子は、演算結果を決定する2番目の被演算子を返す.
論理演算子(|)のいずれかがtrueである場合、trueが返されます.上記の論理例では、「完了」はfalseとして評価される.では,論理積演算子のように決定結果の後の被演算子を評価して返す.
    // 논리합
    finished = true;
    message = finished || "미완료";
    console.log(message); // => '미완료'
では、上記の例ではどのような結果が得られるのでしょうか.finishはtrueと評価された.論理連結演算子の前の被演算子がtrueと評価される場合、後の被演算子評価結果は必要ありません.後の被演算子はtrue,結果はtrue,false,結果はtrueである.後の被演算子は判断結果に影響を及ぼさず評価を行わない.最後に、前のtrueで計算された演算子を返します.これがショートカット評価です.上の例題は論理合成例題で説明したが,論理乗算も同様である.論理乗算の例では、finishまたはfalseの場合、後続の被演算子は必ずしも見る必要はなく、結果はfalseである.したがってfalseを返します.