자바스크립트 연산자
1. 산술 연산자
+ | 덧셈 | 5 + 2 = 7 |
- | 뺄셈 | 5 - 2 = 3 |
* | 곱셈 | 5 * 2 = 10 |
/ | 나눗셈 | 5 / 2 = 2.5 |
% | 나머지 | 5 % 2 = 1 |
** | 거듭제곱 | 5 ** 2 = 25 |
++ | 1 증가 (증가 연산자) | a++ |
-- | 1 감소 (감소 연산자) | a-- |
2. 대입 연산자
= | 값 할당 | a = 5 |
+= | 덧셈 후 할당 | a += 2 (a = a + 2) |
-= | 뺄셈 후 할당 | a -= 2 (a = a - 2) |
*= | 곱셈 후 할당 | a *= 2 (a = a * 2) |
/= | 나눗셈 후 할당 | a /= 2 (a = a / 2) |
%= | 나머지 후 할당 | a %= 2 (a = a % 2) |
**= | 거듭제곱 후 할당 | a **= 2 (a = a ** 2) |
3. 비교 연산자
== | 값만 비교 (타입 변환 O) | 5 == '5' (true) |
=== | 값과 타입 모두 비교 (엄격 비교) | 5 === '5' (false) |
!= | 값만 비교 (다르면 true) | 5 != '5' (false) |
!== | 값과 타입 모두 비교 (다르면 true) | 5 !== '5' (true) |
> | 크다 | 5 > 3 (true) |
< | 작다 | 5 < 3 (false) |
>= | 크거나 같다 | 5 >= 5 (true) |
<= | 작거나 같다 | 5 <= 5 (true) |
4. 논리 연산자
&& | 그리고 (AND) | true && false (false) |
` | ` | |
! | 부정 (NOT) | !true (false) |
5. 비트 연산자
& | 비트 AND | 5 & 1 (1) |
` | ` | 비트 OR |
^ | 비트 XOR | 5 ^ 1 (4) |
~ | 비트 NOT | ~5 (-6) |
<< | 왼쪽 시프트 | 5 << 1 (10) |
>> | 오른쪽 시프트 | 5 >> 1 (2) |
>>> | 부호 없는 오른쪽 시프트 | -5 >>> 1 (2147483645) |
6. 삼항 연산자
조건 ? 참일 때 : 거짓일 때
let result = (age >= 18) ? '성인' : '미성년자';
7. 타입 연산자
typeof | 타입 반환 | typeof 123 ("number") |
instanceof | 객체 타입 여부 확인 | obj instanceof Array (true/false) |
8. 기타 연산자
, (콤마) | 여러 표현식 실행 후 마지막 값 반환 | let a = (1, 2, 3); // a = 3 |
delete | 객체의 속성 삭제 | delete obj.key |
void | 표현식 평가 후 undefined 반환 | void(0) |
in | 객체 속성 존재 여부 확인 | 'key' in obj |
new | 객체 생성 | new Date() |