ECMAScript 덧 연산자
많은 프로그래밍 언어에서 덧셈 연산자(즉, 加호기나 뺄호기)는 가장 간단한 수학 연산자로 사용됩니다.
ECMAScript에서 덧셈 연산자는 많은 특수한 동작을 가집니다.
덧셈 연산자
법 연산자는 加호기(+로) 표시됩니다:
var iResult = 1 + 2
곱셈 연산자와 마찬가지로, ECMAScript에서의 덧셈도 특수한 값을 처리할 때 특수한 동작이 있습니다:
- 어떤 연산자가 NaN이면, 결과는 NaN입니다.
- -Infinity 加 -Infinity, 결과는 -Infinity입니다.
- Infinity 加 -Infinity, 결과는 NaN입니다.
- +0에서 +0을 더하는 경우, 결과는 +0입니다.
- -0에서 +0을 더하는 경우, 결과는 +0입니다.
- -0에서 -0을 더하는 경우, 결과는 -0입니다.
그러나 문자열이 하나의 연산자인 경우, 다음과 같은 규칙을 따릅니다:
- 두 개의 연산자가 모두 문자열이면, 두 번째 문자열을 첫 번째 문자열에 연결합니다.
- 만약 하나의 연산자만 문자열이면, 다른 연산자를 문자열로 변환하여 두 개의 문자열을 연결한 문자열이 됩니다.
예를 들어:
var result = 5 + 5; // 두 개의 숫자 alert(result); // "10" 출력 var result2 = 5 + "5"; // 하나의 숫자와 문자열 alert(result2); // "55" 출력
이 코드는 덧셈 연산자의 두 가지 모드 간의 차이를 설명합니다. 일반적으로 5+5는 10(원래 값)으로 등가합니다(위 코드의 앞 두 행과 같이). 그러나 하나의 연산자를 문자열 "5"로 변경하면 결과는 "55"(원래 문자열 값)이 됩니다. 이는 다른 연산자도 문자열로 변환된다는 것입니다.
주의:JavaScript에서 일반적인 오류를 피하기 위해, 덧셈 연산자를 사용할 때는 반드시 연산자의 데이터 타입을 주의 깊게 확인해야 합니다.
뺄 연산자
뺄 연산자(-)는 흔히 사용되는 연산자입니다:
var iResult = 2 - 1;
덧셈 연산자와 마찬가지로, 특수 값을 처리할 때 덧셈 연산자도 특수한 동작을 합니다:
- 어떤 연산자가 NaN이면, 결과는 NaN입니다.
- Infinity에서 Infinity를 뺄 경우, 결과는 NaN입니다.
- -Infinity에서 -Infinity를 뺄 경우, 결과는 NaN입니다.
- Infinity에서 -Infinity를 뺄 경우, 결과는 Infinity입니다.
- -Infinity에서 Infinity를 뺄 경우, 결과는 -Infinity입니다.
- +0에서 +0을 뺄 경우, 결과는 +0입니다.
- -0에서 -0을 뺄 경우, 결과는 -0입니다.
- +0에서 -0을 뺄 경우, 결과는 +0입니다.
- 어떤 연산자가 숫자가 아니면, 결과는 NaN입니다.
주의:계산자가 모두 숫자인 경우, 일반적인 뺄 연산을 수행하고 결과를 반환합니다.