mozilla
Your Search Results

    演算子

    この章のドキュメントは、JavaScript 言語のすべての演算子、式、キーワードについて書かれています。

    カテゴリ別の式と演算子

    アルファベット順のリストは左側のサイドバーをご覧ください。

    基本的な式

    JavaScript の基本的なキーワードと一般的な式です。

    this
    this キーワードは、関数の実行コンテキストを参照します。
    function
    function キーワードは、関数式を定義します。
    class
    class キーワードは、クラス式を定義します。
    function*
    function* キーワードは、ジェネレータ関数式を定義します。
    yield
    ジェネレータ関数の一時停止と再開をします。
    yield*
    別のジェネレータ関数または反復可能オブジェクトを代行します。
    []
    配列初期化子またはリテラル構文です。
    {}
    オブジェクト初期化子またはリテラル構文です。
    /ab+c/i
    正規表現式のリテラル構文です。
    [for (x of y) x]
    配列内包表記です。
    (for (x of y) y)
    ジェネレータ内包表記です。
    ( )
    グループ化演算子です。

    左辺式

    左辺値は、代入の対象になります。

    Property accessors
    メンバ演算子は、オブジェクトのプロパティやメソッドへのアクセスを提供します。
    (object.property and object["property"]).
    new
    new 演算子は、コンストラクタのインスタンスを作成します。
    super
    super キーワードは、親コンストラクタを呼び出します。
    ...obj
    spread 演算子は、式を複数の引数または複数の要素に展開して、それぞれ関数呼び出しまたは配列リテラルに渡します。

    増加と減少

    接尾/接頭辞のインクリメント演算子と接尾/接頭辞のデクリメント演算子です。

    A++
    接尾辞インクリメント演算子。
    A--
    接尾辞デクリメント演算子。
    ++A
    接頭辞インクリメント演算子。
    --A
    接頭辞デクリメント演算子。

    単一演算子

    単一演算は、1 個のオペランドによる演算です。

    delete
    delete 演算子は、オブジェクトからプロパティを削除します。
    void
    void 演算子は、式の戻り値を破棄します。
    typeof
    typeof 演算子は、与えられたオブジェクトの型を判別ます。
    +
    単一正値演算子は、そのオペランドを Number 型に変換します。
    -
    単一負値演算子は、そのオペランドを Number 型に変換して正負を反転します。
    ~
    ビット演算子の NOT です。
    !
    論理演算子の NOT です。

    算術演算子

    算術演算子は、数値 (リテラルまたは値) をオペランドとして取り、1 個の数値を返します。

    +
    加算演算子です。
    -
    減算演算子です。
    /
    除算演算子です。
    *
    乗算演算子です。
    %
    剰余演算子です。

    関係演算子

    比較演算子は、そのオペランドを比較し、その比較が真かどうかに基づいて Boolean 値を返します。

    in
    in 演算子は、与えられたプロパティをオブジェクトが持っているかどうかを判別します。
    instanceof
    instanceof 演算子は、オブジェクトが別のオブジェクトのインスタンスかどうかを判別します。
    <
    小なり演算子です。
    >
    大なり演算子です。
    <=
    以下演算子です。
    >=
    以上演算子です。

    等価演算子

    等価演算子の評価の結果は常に、比較が真かどうかに基づいて Boolean 型の値になります。

    ==
    等価演算子です。
    !=
    不等価演算子です。
    ===
    同一演算子です。
    !==
    非同一演算子です。

    ビットシフト演算子

    オペランドのすべてのビットをシフト演算します。

    <<
    ビット左シフト演算子です。
    >>
    ビット右シフト演算子です。
    >>>
    ビット符号なし右シフト演算子です。

    バイナリビット演算子

    ビット演算子は、そのオペランドを 32 ビット (0 と 1) の並びとして扱い、標準の JavaScript 数値を返します。

    &
    ビット論理積 (AND) です。
    |
    ビット論理和 (OR) です。
    ^
    ビット排他的論理和 (XOR) です。

    バイナリ論理演算子

    論理演算には、一般的に (論理) 真偽値が使用され、それが置かれた時に真偽値を返します。

    &&
    論理積 (AND) です。
    ||
    論理和 (OR) です。

    三項演算子

    (condition ? ifTrue : ifFalse)

    この条件演算子は、条件 (condition) の論理値を基に、真偽 2 つの値のいずれか一方を返します。

    代入演算子

    代入演算子は、右辺のオペランドに基づいて、値を左辺のオペランドに代入します。

    =
    代入演算子です。
    *=
    乗算値を代入します。
    /=
    除算値を代入します。
    %=
    剰余値を代入します。
    +=
    加算値を代入します。
    -=
    減算値を代入します。
    <<=
    左シフトした値を代入します。
    >>=
    右シフトした値を代入します。
    >>>=
    符号なしの右シフトした値を代入します。
    &=
    ビット論理積 (AND) の値を代入します。
    ^=
    ビット排他的論理和 (XOR) の値を代入します。
    |=
    ビット論理和 (OR) の値を代入します。
    [a, b] = [1, 2]
    {a, b} = {a:1, b:2}

    分割代入は、配列やオブジェクトのプロパティを、配列やオブジェクトリテラルに似た構文を使用して変数に代入します。

    カンマ演算子

    ,
    カンマ演算子は、複数の式を単一の文で評価し、その最後の式の結果を返します。

    非標準の機能

    レガシージェネレータ関数
    function キーワードは、式の内部でレガシージェネレータ関数の定義に使用されます。関数をレガシージェネレータにするには、関数本体に少なくとも 1 個の yield 式を含めてください。
    式クロージャ
    式クロージャ構文は、単純な関数を書くための省略記法です。

    仕様

    仕様 状況 コメント
    ECMAScript 1st Edition. Standard Initial definition.
    ECMAScript 5.1 (ECMA-262)
    The definition of 'Expressions' in that specification.
    Standard
    ECMAScript 6 (ECMA-262)
    The definition of 'ECMAScript Language: Expressions' in that specification.
    勧告候補 新仕様: Spread 演算子、分割代入、super キーワード、配列内包、ジェネレータ内包

    関連項目

    ドキュメントのタグと貢献者

    タグ: 
    Contributors to this page: Potappo, teoli, Marsf, yyss, ethertank
    最終更新者: Marsf,
    サイドバーを隠す