JavaScript | 変数に値を代入するときの仕組み

JavaScript JavaScript
スポンサーリンク

主な内容の要点

演算子の優先順位と結合規則とは?

式の中で複数の演算子が使われている場合、どの順番で演算を行うかを決めるルールが「優先順位」と「結合規則」です。

  • 優先順位:どの演算子を先に計算するかを決める順位。
  • 結合規則:優先順位が同じ演算子が並んでいる場合、どちらを先に計算するかを決めるルール。

優先順位と結合規則の例

1. 優先順位の例

let result = 5 + 4 * 3;
console.log(result); // 出力: 17
JavaScript

この場合、*(掛け算)の優先順位が+(足し算)より高いため、4 * 3が先に計算され、その後に5 + 12が計算されます。

2. 結合規則の例

let result = 12 / 4 * 3;
console.log(result); // 出力: 9
JavaScript

/(割り算)と*(掛け算)は優先順位が同じで、結合規則は「左から右」なので、左側の/が先に計算されます。


演算子の優先順位一覧

JavaScriptの演算子は、優先順位が高い順に以下のように並んでいます。

優先順位演算子説明
21()グループ化
20. [] () ?.プロパティアクセス、関数呼び出し、Optional chaining
19newインスタンス生成
18++(後置)後置インクリメント
17! ~ + - ++(前置) -- delete typeof void await単項演算子
16**べき乗
15* / %乗算、除算、剰余
14+ -加算、減算
13<< >> >>>ビットシフト
12> < >= <= instanceof in比較演算子
11== != === !==等価演算子
10&ビットAND
9^ビットXOR
8``
7&&論理AND
6`
5??Null合体演算子
4? :三項演算子
3= += -= *= /= %= <<= >>= >>>= &= `=^=&&=
2yield yield*ジェネレーター
1,カンマ演算子

括弧を使って優先順位を変更する

式の中で特定の演算を優先させたい場合、括弧()を使って明示的に順序を指定できます。

let result = (10 + 5) * 4;
console.log(result); // 出力: 60
JavaScript

このように、括弧内の計算が最優先で行われます。


初心者へのアドバイス

  • 基本は「掛け算・割り算が足し算・引き算より先」と覚えればOK。
  • 迷ったら 括弧で明示的に順序を指定 すると安全。
  • 複雑な式は分けて書くと読みやすくなる。

まとめ

  • 演算子の優先順位と結合規則を理解することで、意図した通りの計算結果を得ることができます。
  • 複雑な式では、括弧を使って計算順序を明示的に指定することをおすすめします。
  • 演算子の優先順位は言語仕様に基づいて決まっているため、基本的なルールを覚えておくと便利です。
タイトルとURLをコピーしました