JavaScript 算術演算

❮ 前章へ 次章へ ❯

数値を扱う典型的なものは算術演算です。


JavaScript 算術演算子

算術演算子は、数値(リテラルまたは変数)の算術演算を実行します。

演算子 説明
+ 加算
- 減算
* 乗算
/ 除算
% 剰余
++ インクリメント
-- デクリメント

算術演算

典型的な算術演算は2つの数値での演算です。

2つの数値はリテラルにすることができます:

var x = 100 + 50;
Try it Yourself »

または、変数にもできます:

var x = a + b;
Try it Yourself »

或いは、式にもできます:

var x = (100 + 50) * a;
Try it Yourself »

演算子とオペランド

算術演算の数値は、オペランドとも呼ばれます。

オペレーション(2つのオペランドの間で実行される)は、演算子によって定義されます。

オペランド 演算子 オペランド
100 + 50

加算演算子 (+) は、数値を加算します。

加算

var x = 5;
var y = 2;
var z = x + y;
Try it Yourself »

減算演算子 (-)は、数値を減算します。

減算

var x = 5;
var y = 2;
var z = x - y;
Try it Yourself »

乗算演算子 (*) は、数値を乗算します。

乗算

var x = 5;
var y = 2;
var z = x * y;
Try it Yourself »

除算演算子 (/) は、数値を除算します。

除算

var x = 5;
var y = 2;
var z = x / y;
Try it Yourself »

剰余演算子 (%) は、除算の余りを返します。

剰余

var x = 5;
var y = 2;
var z = x % y;
Try it Yourself »

インクリメント演算子 (++) 数値をインクリメントします。.

インクリメント

var x = 5;
x++;
var z = x;
Try it Yourself »

デクリメント演算子 (--) 数値をデクリメントします。

デクリメント

var x = 5;
x--;
var z = x;
Try it Yourself »

演算子の優先順位

演算子の優先順位は、演算式で演算が実行される順序を説明するものです。

var x = 100 + 50 * 3;
Try it Yourself »

上の例の結果は、150 * 3 と同じですか、それとも 100 + 150 ですか?

最初に行われるのは加算ですか、または乗算ですか?

伝統的な学校での数学と同様に、乗算が最初に行われます。

乗算(*)と除算(/)の優先順位は、加算(+)や減算(-)よりもが高くなります。

また、(学校の数学のように)括弧を使って優先順位を変更することができます:

var x = (100 + 50) * 3;
Try it Yourself »

括弧を使用すると、括弧内の演算が最初に実行されます。

多数の演算子の優先順位が同じ場合(加算や減算など)は、左から右に計算されます:

var x = 100 + 50 - 3;
Try it Yourself »

JavaScript 算子の優先順位の値

(訳注):何の値かよく分らない!

演算子 説明
19 ( ) 式のグループ化 (3 + 4)
       
18 . メンバー person.name
18 [] メンバー person["name"]
       
17 () 関数呼び出し myFunction()
17 new 作成 new Date()
       
16 ++ 後置インクリメント i++
16 -- 後置デクリメント i--
       
15 ++ 前置インクリメント ++i
15 -- 前置デクリメント --i
15 ! 論理 not !(x==y)
15 typeof typeof x
       
14 * 乗算 10 * 5
14 / 除算 10 / 5
14 % 剰余 10 % 5
14 ** べき乗 10 ** 2
       
13 + 加算 10 + 5
13 - 減算 10 - 5
       
12 << 左シフト x << 2
12 >> 右シフト x >> 2
12 >>> 右シフト (符号なし) x >>> 2
       
11 < より小さい x < y 
11 <= 以下 x <= y
11 > より大きい x > y
11 >= 以上 x >= y
       
10 == 等しい x == y
10 === 厳密に等しい x === y
10 != 等しくない x != y
10 !== 厳密に等しくない x !== y
       
6 && 論理 and x && y
5 || 論理 or x || y
       
3 = 代入 x = y
3 += 代入 x += y
3 -= 代入 x -= y
3 *= 代入 x *= y
3 %= 代入 x %= y
3 <<= 代入 x <<= y
3 >>= 代入 x >>= y
3 >>>= 代入 x >>>= y
3 &= 代入 x &= y
3 ^= 代入 x ^= y
3 |= 代入 x |= y

赤色のエントリは、実験的または提案された技術(ECMASScript 2016またはES7)です

括弧内の式は、残りの式で値が使用される前に完全に計算されます。


練習問題による自己診断

Exercise 1 »  Exercise 2 »  Exercise 3 »  Exercise 4 »  Exercise 5 »


❮ 前章へ 次章へ ❯