산술 연산이 불가능하면 NaN을 반환
의미 | side effect | |
---|---|---|
+ | 덧셈 | X |
- | 뺄셈 | X |
* | 곱셈 | X |
/ | 나눗셈 | X |
% | 나머지 | X |
++ | 증가 | O |
-- | 감소 | O |
var x = 5;
var result;
result = x++; // 먼저 result에 x를 할당하고, x의 값을 증가시킨다.
console.log(result, x); // 5 6
result = ++x; // 먼저 x의 값을 증가시킨 후, result에 x를 할당한다.
console.log(result, x); // 7 7
result = x--; // 먼저 result에 x를 할당하고, x의 값을 감소시킨다.
console.log(result, x); // 7 6
result = --x; // 먼저 x의 값을 감소시키고, result에 x를 할당한다.
console.log(result, x) // 5 5
문자열을 숫자로 타입 변환 x가 바뀌는 것이 아니라, x를 숫자형으로 바꾼 값을 생성하여 반환
var x = '1';
console.log(-x); // -1
문자열 연결 피연산자 중 하나 이상이 문자열이면 문자열 연결
'1' + 2; // 12
다른 타입이어도 연산이 가능하니 주의해야 함
1 + true; // 2
1 + null; // 1
1 + undefined; // NaN (연산 불가능)
side effect | |
---|---|
= | O |
+= | O |
-= | O |
*= | O |
/= | O |
%= | O |
위 연산자들은 피연산자의 값을 바꿈
할당문은 (값으로 평가되는) 표현식인 문이다.
console.log(x = 10); // 10
따라서 할당문을 다른 변수에 할당할수도 있다.
var a, b, c;
a = b = c = 0;
console.log(a, b, c); // 0 0 0