본문 바로가기

Javascript

자바스크립트 기초(연산자)

1. 산술 연산자

: 산술 연산자는 우리가 잘 알고 있는 수학 계산을 할 때 사용하는 연산자이다.

 

다음은 자바스크립트의 산술 연산자를 표로 정리한 것이다.

나머지 (%) 이항 연산자입니다. 두 피연산자를 나눴을 때의 나머지를 반환합니다. 12 % 5 는 2를 반환합니다.
증가 (++) 단항 연산자입니다. 피연산자에 1을 더합니다. 전위 연산자(++x)로 사용하면 피연산자에 1을 더한 값을 반환합니다. 반면 후위 연산자(x++)로 사용한 경우 피연산자에 1을 더하기 전의 값을 반환합니다. x가 3일 때, ++x는 x에 4를 할당한 후 4를 반환합니다. 반면 x++는 3을 먼저 반환한 후 x에 4를 할당합니다.
감소 (--) 단항 연산자입니다. 피연산자에서 1을 뺍니다. 반환 값은 증가 연산자처럼 동작합니다. x가 3일 때, --x는 x에 2를 할당한 후 2를 반환합니다. 반면 x--는 3을 먼저 반환한 후 x에 2를 할당합니다.
단항 부정 (-) 단항 연산자입니다. 피연산자의 부호를 반대로 바꾼 값을 반환합니다. x가 3일 때, -x는 -3을 반환합니다.
단항 플러스 (+) 단항 연산자입니다. 피연산자가 숫자 타입이 아니면 숫자로 변환을 시도합니다. +"3"은 3을 반환합니다.
+true는 1을 반환합니다.
거듭제곱 (**) base^exponent, 즉 base를 exponent로 거듭제곱한 결과를 반환합니다. 2 ** 3은 8을 반환합니다.
10 ** -1은 0.1을 반환합니다.

 

 

2. 할당(대입) 연산자

: 연산자(또는 연산식) 오른쪽의 실행 결과를 왼쪽 변수에 할당하는 연산자이다. 변수에 값을 할당하거나 연산식의

결과를 변수에 저장할 때 할당 연산자를 사용한다.

 

다음은 자바스크립트의 할당 연산자를 표로 정리한 것이다.

할당 x = y x = y
더하기 할당 x += y x = x + y
빼기 할당 x -= y x = x - y
곱하기 할당 x *= y x = x * y
나누기 할당 x /= y x = x / y
나머지 할당 x %= y x = x % y
거듭제곱 할당 x **= y x = x ** y
왼쪽 시프트 할당 x <<= y x = x << y
오른쪽 시프트 할당 x >>= y x = x >> y
부호 없는 오른쪽 시프트 할당 x >>>= y x = x >>> y
비트 AND 할당 x &= y x = x & y
비트 XOR 할당 x ^= y x = x ^ y
비트 OR 할당 x |= y x = x | y
논리 AND 할당 x &&= y x && (x = y)
논리 OR 할당 x ||= y x || (x = y)
널 병합 할당 x ??= y x ?? (x = y)

 

 

3. 비교 연산자

: 비교 연산자는 피연산자 2개의 값을 비교해서 참이나 거짓으로 결과값을 반환한다. 주로 어떠한 조건을 체크할 때

사용한다.

 

다음은 비교 연산자 표이다.

동등 (==) 피연산자가 서로 같으면 true를 반환합니다. 3 == var1
"3" == var1
3 == '3'
부등 (!=) 피연산자가 서로 다르면 true를 반환합니다. var1 != 4
var2 != "3"
일치 (===) 두 피연산자의 값과 타입이 모두 같은 경우 true를 반환합니다. 3 === var1
불일치  (!==) 피연산자의 값 또는 타입이 서로 다를 경우 true를 반환합니다. var1 !== "3"
3 !== '3'
큼 (>) 왼쪽 피연산자가 오른쪽 피연산자보다 크면 true를 반환합니다. var2 > var1
"12" > 2
크거나 같음 (>=) 왼쪽 피연산자가 오른쪽 피연산자와 같거나 크면 true를 반환합니다. var2 >= var1
var1 >= 3
작음 (<) 왼쪽 피연산자가 오른쪽 피연산자보다 작으면 true를 반환합니다. var1 < var2
"2" < 12
작거나 같음 (<=) 왼쪽 피연산자가 오른쪽 피연산자와 같거나 작으면 true를 반환합니다. var1 <= var2
var2 <= 5

 

 

4. 논리 연산자

: 논리 연산자는 true, false를 처리하는 연산자이다. 즉, true, false 자체가 피연산자인 연산자이다. 주로 프로그램에서

조건을 체크할 때 사용한다.

 

다음은 논리 연산자를 정리한 표이다.

논리 AND (&&) expr1 && expr2 expr1을 false로 변환할 수 있으면 expr1을 반환합니다. 그 외의 경우에는 expr2를 반환합니다. 따라서 불리언 값과 함께 사용한 경우, 둘 다 참일 때 true를, 그 외에는 false를 반환합니다.
논리 OR (||) expr1 || expr2 expr1을 true로 변환할 수 있으면 expr1을 반환합니다. 그 외의 경우에는 expr2를 반환합니다. 따라서 불리언 값과 함께 사용한 경우, 둘 중 하나가 참일 때 true를, 그 외에는 false를 반환합니다.
논리 NOT (!) !expr 단일 피연산자를 true로 변환할 수 있으면 false를 반환합니다. 그 외에는 true를 반환합니다.

 

5. 비트 연산자

: 비트 연산자는 논리 연산자와 비슷하지만, 비트(bit) 단위로 논리 연산을 수행한다.

또한, 비트 단위로 전체 비트를 왼쪽이나 오른쪽으로 이동시킬 때도 사용한다.

 

다음은 비트 연산자 표이다.

& 대응되는 비트가 모두 1이면 1을 반환함. (비트 AND 연산)
| 대응되는 비트 중에서 하나라도 1이면 1을 반환함. (비트 OR 연산)
^ 대응되는 비트가 서로 다르면 1을 반환함. (비트 XOR 연산)
~ 비트를 1이면 0으로, 0이면 1로 반전시킴. (비트 NOT 연산)
<< 지정한 수만큼 비트를 전부 왼쪽으로 이동시킴. (left shift 연산)
>> 부호를 유지하면서 지정한 수만큼 비트를 전부 오른쪽으로 이동시킴. (right shift 연산)
>>> 지정한 수만큼 비트를 전부 오른쪽으로 이동시키며, 새로운 비트는 전부 0이 됨.