2
5

【JavaScript】演算子一覧

Last updated at Posted at 2023-08-08

算術演算子

演算子 概要
+ 数値の加算 3 + 5 ➡︎ 8
- 数値の減算 10 -7 ➡︎ 3
* 数値の乗算 3 * 5 ➡︎ 15
** 数値のべき乗 2 ** 3 ➡︎ 8
/ 数値の徐算 10 / 5 ➡︎ 2
% 数値の剰余 10 /4 ➡︎ 2
++ 前置加算 x = 3; y = ++x; ➡︎ yは4
++ 後置加算 x = 3; y = x++; ➡︎ yは3
-- 前置減算 x = 3; y = --x; ➡︎ yは2
-- 後置減算 x = 3; y = x--; ➡︎ yは3

代入演算子

演算子 概要
= 変数などに値を代入 x = 1
+= 左辺の値に右辺の値を加算したものを代入 x = 3; x += 2 ➡︎ 5
-= 左辺の値から右辺の値を減算したものを代入 x = 3; x -= 2 ➡︎ 1
*= 左辺の値に右辺の値を乗算したものを代入 x = 3; x *= 2 ➡︎ 6
/= 左辺の値を右辺の値で除算したものを代入 x = 3; x /= 2 ➡︎ 1.5
%= 左辺の値を右辺の値で除算した余りを代入 x = 3; x %= 2 ➡︎ 1
**= 左辺の値を右辺の値でべき乗したものを代入 x = 3; x **= 2 ➡︎ 9
&= 左辺の値を右辺の値でビット論理積演算した結果を代入 x = 10; x &= 5; ➡︎ 0
|= 左辺の値を右辺の値でビット論理和演算した結果を代入 x = 10; x |= 5; ➡︎ 15
^= 左辺の値を右辺のでビット排他的論理和演算した結果を代入 x = 10; x ^= 5 ➡︎ 15
&&= 左辺の値がtrueの場合にだけ右辺に代入 (ES2021で導入された) x = 1; x &&= 5; ➡︎ 5
||= 左辺の値がfalseの場合にだけ右辺を代入 (ES2021で導入された) x = 0; x ||= 5; ➡︎ 5
??= 左の値がnull / undefinedの場合だけ右辺を代入(ES2021で導入された) x = null; x ??= 5; ➡︎ 5
<<= 左辺の値を右辺の値だけ左シフトした結果を代入 x = 10; x <<= 1; ➡︎ 20
>>= 左辺の値を右辺の値だけ右シフトした結果を代入 x = 10; x >> =1 ➡︎ 5
>>>= 左辺の値を右辺の値だけ右シフトした結果を代入 (符号なし) x = 10; x >> =2 ➡︎ 2

比較演算子

演算子 概要
== 左辺と右辺の値が等しい場合はtrue 5 == 5 ➡︎ true
!= 右辺と左辺が等しくない場合はtrue 5 != t ➡︎ true
< 左辺が右辺より小さいい場合はtrue 5 < 5 ➡︎ false
<= 左辺が右辺以下の場合はtrue 5 <= 5 ➡︎ true
> 左辺が右辺より大きい場合はtrue 5 > 3 ➡︎ true
>= 左辺が右辺以上の場合はtrue 5 >= 5 ➡︎ true
=== 左辺と右辺の値が等しくデータ型も同じ場合はtrue 5 === '5' ➡︎ false
!== 左辺と右辺の値が等しくない場合、またはデータが異なる異なる場合はtrue 5 !== '5' ➡︎ true
?: 条件演算子。「条件式 ? 式1 : 式2」。条件式がtrueの場合は式1を、falseの場合は式2を返す (10 === 1) ? 1 : 0 ➡︎ 0
?? null合体演算子。左辺がnullでなければその値、、左辺がnullならば右辺の値 (両方ともnullならばnull) (ES2020で導入された) null ?? 5 ➡︎ 5

論理演算子

演算子 概要
&& 左右の式がともにtrueの場合はtrue x && y ➡︎ false
|| 左右の式のどちらかがtrueの場合はtrue x || y ➡︎ true
! 式がfalseの場合はtrue !x ➡︎ false

ビット演算子

演算子 概要
& 左式と右式の両方にセットされているビットをセット 10 & 5 ➡︎ 1010 & 0101 ➡︎ 0000 ➡︎ 0
| 左式と右式のどちらかにセットされているビットをセット 10 | 5 ➡︎ 1010 | 0101 ➡︎ 1111 ➡︎ 15
^ 左式と右式のどちらかにセットされていて、かつ、両方にセットされていないビットをセット 10 ^ 5 ➡︎ 1010 ^ 0101 ➡︎ 1111 ➡︎ 15
- ビットを反転 -10 ➡︎ 1010 ➡︎ 0101 ➡︎ -11
<< ビットを左にシフト 10 << 1 ➡︎ 1010 << 1 ➡︎ 10100 ➡︎ 10100 ➡︎ 20
>> ビットを右にシフト (算術シフト) 10 >> 1 ➡︎ 1010 >> 1 ➡︎ 0101 ➡︎ 5
>>> ビットを右シフト (論理シフト) 10 >>> 2 ➡︎ 1010 >>> 2 ➡︎ 0010 ➡︎ 2

その他の演算子

演算子 概要
, (カンマ) 左右の式を続けて実行
delete オブジェクトのプロパティや配列の要素を削除
in 指定されたプロパティがオブジェクトに存在するか判定
instanceof オブジェクトが指定されたクラスのインスタンスか判定
new 新しいインスタンスを生成
typeof オペランドのデータ型を取得
void 未定義値を返す
2
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
5