07.演算子


2022.04.04.月曜日


07.演算子


演算子?1つ以上の式について、算術、付与、比較、論理、タイプ、指数演算などを実行して値を作成します.演算対象を被演算者と呼ぶ.

7.1算術演算子

  • 二項演算子
    2つの被演算子に対して算術演算を行い,数値を生成する.
    ex) +, -, *,/, %
  • 単項演算子
    1つの被演算子に対して算術演算を行い,数値を生成する.
    ex)++, --, +, -
  • 文字列接続演算子
    +1つ以上の被演算子が文字列である場合、演算子は文字列接続演算子として使用されます.
    '1' + 2; // -> '12' 
    1 + '2'; // -> '12'
    1 + true; // -> 2
    1 + false; // -> 1
    1 + null; // -> 1
    1 + undefined // -> NaN
    		```
    위와 같은 현상을 암묵적 타입 변환 혹은 타입 강제 변환이라 부른다. 
    
  • 7.2割付演算子


    右の演算子の評価結果を左の変数に割り当てます.
    ex) =, +=, -=, *=,/=, %=

    7.3比較演算子


    真偽をただす.この結果は主にif文またはfor文で条件式として使用されます.
  • ピア/照合比較演算子
    ex) ==, ===, !=, !==
    区别:==,!=タイプを比較しないで暗黙的なタイプ変換を行います.逆に===,!==タイプを比較することもできます.
  • サイズ関係比較演算子
    ex) >, <, >=, <=
  • 7.4三項条件演算子

    var result = score >= 60 ? 'pass' : 'fail';

    7.5論理演算子


    ex) ||, &&, !
    'Cat' && 'Dog'; // => 'Dog'
    上はショートカット評価の例です.
    ※クイック評価:a||bがor演算子で、前に1が出ていれば、それ以上の評価はありません.したがって、a値のみが返されます.false||bであればbを返し、a&bであればbを計算してbを返す.

    7.6カンマ演算子


    カンマ演算子は、左の被演算子から順に被演算子を評価し、最後の被演算子の評価が終了すると、最後の被演算子の評価結果を変換します.

    7.7グループ化演算子


    カッコで囲まれた演算子のグループハイフンは、式で最初に評価されます.

    7.8 type of演算子


    string、number、boolean、undefined、symbol、object、関数の1つを返し、nullは返しません.nullはobjectを返します.

    7.9指数演算子


    ES 7に導入された指数演算子は,左が下,右が指数,再二乗である.Math.Powの毒性がいい

    7.10その他の演算子


    ex) ?. , ??, delete, new, instanceof, in
    ※後述する.本を読んでこのページを確認することができます.

    7.11演算子の浮動小数点効果


    一部の演算子は、他のコードに影響を与える副作用を有します.
    ex) =,++, --, delete

    7.12演算子優先度


    -スキップ-

    7.13演算子連結順序


    -スキップ-