증감 연산자
2022. 12. 28. 16:26ㆍJavascript/TCP school
증감 연산자(increment and decrement operator)
피연산자를 1씩 증가 혹은 감소시킬 때 사용하는 연산자
이 연산자는 피연산자가 단 하나뿐인 단항 연산자
해당 연산자가 피연산자의 어느 쪽에 위치하는가에 따라 연산의 순서 및 결과가 달라짐
증감 연산자 | 설명 |
++x | 먼저 피연산자의 값을 1 증가시킨 후에 해당 연산을 진행함. |
x++ | 먼저 해당 연산을 수행하고 나서, 피연산자의 값을 1 증가시킴. |
--x | 먼저 피연산자의 값을 1 감소시킨 후에 해당 연산을 진행함. |
x-- | 먼저 해당 연산을 수행하고 나서, 피연산자의 값을 1 감소시킴. |
var x = 10, y = 10;
document.write((++x - 3) + "<br>"); // x의 값을 우선 1 증가시킨 후에 3을 뺌. 8
document.write(x + "<br>"); // 11
document.write((y++ - 3) + "<br>"); // 먼저 y에서 3을 뺀 후에 y의 값을 1 증가시킴. 7
document.write(y); // 11
증감 연산자의 연산 순서
증감 연산자는 피연산자의 어느 쪽에 위치하는가에 따라 연산의 순서가 달라집니다.
다음 예제는 증감 연산자의 연산 순서를 살펴보기 위한 예제입니다.
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="UTF-8">
<title>JavaScript Operators</title>
</head>
<body>
<h1>증감 연산자의 연산 순서</h1>
<script>
var x = 10; // 8
var y = x-- + 5 + --x; // 23
document.write(x + "<br>");
document.write(y);
</script>
</body>
</html>
증감 연산자의 연산 순서
다음 그림은 위의 예제에서 수행되는 연산의 순서를 보여준다.
① : 첫 번째 감소 연산자(decrement operator)는 피연산자의 뒤쪽에 위치하므로, 덧셈 연산이 먼저 수행됩니다. - 15
② : 덧셈 연산이 수행된 후에 감소 연산이 수행됩니다. (x의 값 : 9)
③ : 두 번째 감소 연산자는 피연산자의 앞쪽에 위치하므로, 덧셈 연산보다 먼저 수행됩니다. (x의 값 : 8)
④ : 감소 연산이 수행된 후에 덧셈 연산이 수행됩니다. - 23
⑤ : 마지막으로 변수 y에 결괏값의 대입 연산이 수행됩니다. (y의 값 : 23)
참고
http://www.tcpschool.com/javascript/js_operator_incAndDec
'Javascript > TCP school' 카테고리의 다른 글
논리 연산자 (0) | 2022.12.28 |
---|---|
비교 연산자 (0) | 2022.12.28 |
대입 연산자 (0) | 2022.12.28 |
산술 연산자 (0) | 2022.12.28 |
변수 (0) | 2022.12.28 |