정보처리기사 취득할 때 많이 봤는데 기본적인것들빼고 기억이 많이 흐려진것같아 다시 정리.
산술 연산자
더하기( + ) 빼기( - ) 곱하기 ( * ) 나누기( / )
| 연산자 | 예제 |
| 나머지 ( % ) | 12 % 5 일경우 2를 반환 몫이아닌 나머지 |
| 증가 ( ++ ) | x가 2일 때, ++x 는 x에 3 할당 후 3을 반환 x가 2일 때, x--는 2를 반환 후 1을 할당 |
| 감소 ( -- ) | |
| 단항 부정 ( - ) | x가 2일 때 -x는 -2를 반환 |
| 단항 플러스 ( + ) | +"3" 은 3반환 +true는 1 반환 |
| 거듭제곱 ( ** ) | 2 ** 3 = 8반환 10 ** -1 = 0.1 반환 |
비교 연산자
var var1 = 3;
var var2 = 4;
| 연산자 | 설명 | true 예제 |
| 동등 ( == ) | 서로 같으면 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 |
| 크거나 같음 ( >= ) | var2 >= var1 var1 >= 3 |
|
| 작음 ( < ) | var1 < var2 "2" < 12 |
|
| 작거나 같음 ( <= ) | var1 <= var2 var2 <= 5 |
비트 연산자
| 연산자 | 사용 | 설명 |
| 비트 AND | a & b | 각 자리비트 값 모두 1일때 1반환 |
| 비트 OR | a | b | 각 자리비트 값 모두 0일때 0반환 |
| 비트 XOR | a ^ b | 각 비트값 서로같으면 0 다르면 1 |
| 비트 NOT | ~ a | 피연산자의 각 자리의 비트를 뒤집음 |
| 왼쪽 시프트 | a << b | a의 이진표현을 b만큼 왼쪽이동 후 오른쪽은 0으로 채움 |
| 오른쪽 시프트 | a >> b | a의 이진표현을 b만큼 오른쪽이동 후 1 미만이동비트는 버림 |
비트 연산자 예제
| 표현식 | 결과 | 설명 |
| 15 & 9 | 9 | 1111 & 1001 = 1001 |
| 15 | 9 | 15 | 1111 | 1001 = 1111 |
| 15 ^ 9 | 6 | 1111 ^ 1001 = 0110 |
| ~15 | -16 | ~ 0000 0000 ... 0000 1111 = 1111 1111 ... 1111 0000 |
| ~9 | -10 | ~ 0000 0000 ... 0000 1001 = 1111 1111 ... 1111 0110 |
논리 연산자
| 연산자 | 사용 | 설명 |
| 논리 AND ( && ) | expr1 && expr2 | 둘다 참일때 true 그외 false |
| 논리 OR ( l l ) | expr1 l l expr2 | 둘중 하나 true면 true 그외 false |
| 논리 NOT ( ! ) | ! expr | 단일피연산자 true일때 false반환 |
논리 연산자 예제
var a1 = true && true; // t && t returns true
var a2 = true && false; // t && f returns false
var a3 = false && true; // f && t returns false
var a4 = false && (3 == 4); // f && f returns false
var o1 = true || true; // t || t returns true
var o2 = false || true; // f || t returns true
var o3 = true || false; // t || f returns true
var o4 = false || (3 == 4); // f || f returns false
var n1 = !true; // !t returns false
var n2 = !false; // !f returns true
할당 연산자
기본적인 할당 연산자는 오른쪽의 피연산자 값을 왼쪽 피연산자 값에 할당하는 등호(=)로, x = y 는 y의 값을 x에 할당.
| 이름 | 연산자 | 뜻 |
| 할당 | 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 >>= y | x = x << y x = x >> y |
| 비트 AND 할당 | x &= y | x = x & y |
| 비트 XOR 할당 | x ^= y | x = x ^ y |
| 비트 OR 할당 | x l= y | x = x l y |
| 논리 AND 할당 | x &&= y | x && ( x = y ) |
| 논리 OR 할당 | x ll= y | x ll ( x = y ) |
-출처
https://developer.mozilla.org/ko/docs/Web/JavaScript/Guide/Expressions_and_Operators#unary_operators
'Algorithm > Baekjoon(Node.js)' 카테고리의 다른 글
| [JavaSrcipt] Baekjoon - 10430 : 나머지 (0) | 2021.08.20 |
|---|---|
| [JavaSrcipt] Baekjoon - 10869 : 사칙연산 (Math.floor, number) (0) | 2021.08.20 |
| [JavaSrcipt] Baekjoon - 1001 : A/B (0) | 2021.08.19 |
| [JavaSrcipt] Baekjoon - 10998 : AxB (0) | 2021.08.19 |
| [JavaSrcipt] Baekjoon - 1001 : A-B (0) | 2021.08.18 |