• JavaScriptの演算子一覧

    公開日:2018年06月29日 最終更新日:2022年04月25日

    JavaScriptで使われる基本の演算子について解説します。値の計算を行う「算術演算子」から「論理演算子」などJavaScriptの基本の演算子をサンプルコードと共に一覧にしました。

    プロエンジニアの無料会員登録はこちら

    目次

    1. 演算子とは?

    JavaScriptには、四則演算を行う演算子やif文などで用いる条件比較の為の演算子、数値の大小を比較する演算子など様々なタイプの演算子があります。

    演算子」とは、例えば「1 + 2」という四則演算(計算)を行う場合のプラス記号「+」の事です。「1」や「2」を「被演算子」もしくは「オペランド(operand)」と呼びます。

    ▲ページトップへ戻る

    2. 基本の演算子

    2.1. 算術演算子 [Arithmetic Operators]

    左右オペランドの数値を計算し値を返す演算子です。

    演算子 説明 サンプルコード
    [+]

    加算演算子(Addition Operator)

    プラス(+)記号。一つ目のオペランドと二つ目のオペランドを足した値を返します。
    var x = 10 + 5;
    //x の値は15。
    [-]

    減算演算子(Subtraction Operator)


    マイナス(-)記号。一つ目のオペランドから二つ目のオペランドを引いた値を返します。
    var x = 10 - 5;
    //x の値は5。
    [*]

    乗算演算子(Multiplication Operator)

    アスタリスク(*)記号。一つ目のオペランドと二つ目のオペランドを掛けた値を返します。
    var x = 10 * 5;
    //x の値は50。
    [/]

    除算演算子(Division Operator)

    スラッシュ(-)記号。一つ目のオペランドと二つ目のオペランドを割った値を返します。
    var x = 10 / 5;
    //x の値は2。
    [%]

    剰余演算子(Modulus Operator)

    パーセント(-)記号。一つ目のオペランドと二つ目のオペランドを割った余りの値を返します。
    var x = 10 % 3 ;
    //x の値は1。
    [++]

    インクリメント演算子(Increment Operator)

    プラス(++)記号。オペランドの数値を一つずつ加算し、値を返します。
    var x = 3; x++;
    //x の値は4。
    [--]

    デクリメント演算子(Decrement Operator)

    マイナス(--)記号。オペランドの数値を一つずつ減算し、値を返します。
    var x = 3; x--;
    //x の値は2。
    [**]

    べき乗演算子(Exponentiation Operator)

    アスタリスク(**)記号。一つ目のオペランドを二つ目のオペランドでべき乗した値を返します。
    var x = 2 ** 3;
    //x の値は8。

    ▲ページトップへ戻る

    2.2. 代入演算子 [Assignment Operators]

    データーや変数などを左オペランドの変数に代入する為の記号です。最もポピュラーな代入演算子はイコール「=」です。

    演算子 説明 サンプルコード
    [=]

    代入演算子(Assignment Operator)

    イコール(=)記号。変数に、右オペランドの値をを代入します。
    var x = 10;
    //x の値は10。
    [+=]

    加算代入演算子(Addition assignment Operator)

    左オペランドに右オペランドの値を足した値を返します。
    var x = 10; x += 2;
    //x の値は12。
    [-=]

    減算演算子

    左オペランドに右オペランドの値を引いた値を返します。
    var x = 10; x -= 2;
    //x の値は8。
    [*=]

    乗算演算子(Subtraction assignment Operator)

    左オペランドに右オペランドの値を掛けた値を返します。
    var x = 10; x *= 2;
    //x の値は20。
    [/=]

    除算演算子(Division assignment Operator)

    左オペランドに右オペランドの値で割った値を返します。
    var x = 10; x *= 2;
    //x の値は5。
    [%=]

    剰余演算子(Remainder assignment Operator)

    左オペランドに右オペランドの値で割った余りの値を返します。
    var x = 10; x %= 3;
    //x の値は1。
    [**=]

    べき上演算子(Exponentiation assignment Operator)

    左オペランドに右オペランドの値でべき乗した値を返します。
    var x = 2; x **= 3;
    //x の値は8。

    ▲ページトップへ戻る

    2.3. 論理演算子 [Logical Operators]

    論理演算子には「論理積(AND)」、「論理和(OR)」、「否定(NOT)」の3つの演算子があり、2つ以上の条件式の演算結果を返す演算子です。

    演算子 説明 サンプルコード
    [&&]

    論理AND演算子(Logical And Operator)

    右オペランドの条件式と左オペランドの条件式が共に真(true)の場合、「true」を返します。
    var x = 10; var y = 5;
    (x < 20 && y > 1)
    //「true」を返します。
    [||]

    論理OR演算子(Logical Or Operator)

    右オペランドの条件式、または左オペランドの条件式が真(true)の場合、「true」を返します。
    var x = 10; var y = 5;
    (x == 20 || y == 5)
    //「true」を返します。
    [!]

    論理NOT演算子(Logical Not Operator)

    条件式が真(true)の場合「false」を返し、偽(false)の場合「true」を返します。
    var x = 5;
    !(x == 10)
    //「true」を返します。

    ▲ページトップへ戻る

    2.4. 比較演算子 [Comparison Operators]

    条件文で二つのオペランドを比較する際に使う記号が「比較演算子」です。

    演算子 説明 サンプルコード
    [==]

    等価演算子(Eequality Operator)

    右オペランドの値と左オペランドの値が同じ場合、「true」異なる場合に「false」を返します。
    var x = 5; var y = 5;
    (x == y)
    //「true」を返します。
    [!=]

    不等価演算子(Inequality Operator)

    右オペランドの値と左オペランドの値が一致しない場合に「true」、同じ場合「false」を返します。
    var x = 10; var y = 5;
    (x != y)
    //「true」を返します。
    [===]

    厳密等価演算子(Strict equality Operator)

    右オペランドの値と左オペランドの値が型も含めて同じ場合、「true」異なる場合に「false」を返します。
    var x = 5; var y = "5";
    (x === y)
    //「false」を返します。
    [!==]

    厳密不等価演算子(Strict inequality Operator)

    右オペランドの値と左オペランドの値が一致しない場合、または型が一致しない場合に「true」、型も値も同じ場合に「false」を返します。
    var x = 5; var y = "5";
    (x !== y)
    //「true」を返します。
    [>]

    大なり演算子(Greater than Operator)

    左オペランドの値が、右オペランドの値より大きい場合に「真(true)」を返します。
    var x = 10;
    (x > 5)
    //「true」を返します。
    [<]

    小なり演算子(Greater than Operator)

    左オペランドの値が、右オペランドの値より小さい場合に「真(true)」を返します。
    var x = 10;
    (x < 5)
    //「false」を返します。
    [>=]

    大なりイコール演算子(Greater than or equal Operator)

    左オペランドの値が、右オペランドの値以上の場合に「真(true)」を返します。
    var x = 5;
    (x >= 10)
    //「false」を返します。
    [<=]

    小なりイコール演算子(Less than or equal Operator)

    左オペランドの値が、右オペランドの値以下の場合に「真(true)」を返します。
    var x = 5;
    (x <= 10)
    //「true」を返します。

    ▲ページトップへ戻る

    2.5. 文字列演算子 [String Operators]

    文字列を結合する演算子です。

    演算子 説明 サンプルコード
    [+]

    結合演算子(Concatenation Operator)

    左オペランドの文字列と右オペランドの文字列を結合します。
    var name1 = "山田";
    var name2 = "花子";
    var fullName = name1 + name2;
    //fullName の値は「山田花子」です。
    [+=]

    代入演算子(Assignment Operator)

    左右オペランドの文字列を結合します。
    var myName = "山田";
    myName += "太郎";
    //myName の値は「山田太郎」です。

    ▲ページトップへ戻る

    2.6. 条件(三項)演算子 [Conditional (ternary) Operators]

    条件演算子は、その名のとおりある条件の真偽により2項目もしくは3項目の値を返す演算子です。

    構文 説明 サンプルコード
    [条件 ? 値1 : 値2]

    条件(三項)演算子
    (Conditional (ternary) Operator)

    条件が真(true)の場合「値1」を返し、偽(false)の場合「値2」を返します。
    var age = 50;
    var status = (age >= 20) ? "成人です。":"未成年です。";
    //「成人です。」を返します。

    ▲ページトップへ戻る

    JavaScriptのスキルが活かせる最新求人情報をチェック!

    月額単価70万円〜80万円
    勤務地 フルリモート
    月額単価80万円〜90万円
    勤務地 フルリモート
    月額単価70万円〜80万円
    勤務地 東京都 港区

    フリーランスの方でこのようなお悩みありませんか?

    • 定期的に案件を紹介してほしい
    • 完全フルリモートワークや、週1出勤など、働き方を選びたい
    • 単価交渉など営業周りが苦手なので、誰かに任せたい

    プロエンジニアにお任せください!

    プロエンジニアはほとんどEND直案件!高額単価案件ならお任せください。
    完全フルリモートや、週1出勤など、希望に合わせた働き方ができる案件を多数ご用意しています。
    単価や契約交渉などは弊社キャリアコンサルタントに全てお任せください。

    無料登録して、あなたの希望に合った案件をチェック!

    簡単60秒!無料登録はこちらから

    おすすめ記事

  • ピックアップ

    フリーランス

    NEW 【React】フロントエンドエンジニア★転職・採用支援サービスの開発

    自社サービスとして転職・採用支援サービスを展開している企業にて、フロントエンドエンジニアとしてご...

    月額単価:70万円〜80万円

    フリーランス

    【JavaScript/React(Next.js)】フロントエンドエンジニア★クラウド型動画コンテンツ配信システムの開発

    国内導入実績No.1の実績を持つクラウド型動画コンテンツ配信システムを行っている企業にて、フロントエ...

    月額単価:80万円〜90万円

    フリーランス

    【Ruby/TypeScript】フルスタックエンジニア★クラウドWAFプロダクトの開発

    自社サイバーセキュリティプロダクトの開発から販売・運用・保守まで 一貫してサービスを提供している...

    月額単価:80万円〜90万円

    フリーランス

    【PHP(Laravel)/JavaScript(Vue.js)】フルスタックエンジニア★求人WEBサービスのエンハンス開発

    同社はWebシステムやスマフォアプリ開発を得意とする受託開発企業です。 今回は求人WEBサービスの保守...

    月額単価:70万円〜80万円

SCROLL TOP