산술 연산자 +,-,*,/,%,**
+
. -
, *
, /
, %
, **
- 사칙연산을 다루는 것부터 셈의 결과를 반환하는 기본 연산자이다.
let x = 1;
let y = 2;
console.log(
x + y,
x - y,
x * y,
x / y,
x % y,
x ** y
);
연산 기호의 우선순위나, 괄호의 사용 또한 알고 있던 방식과 같은 방식으로 계산된다.
문자열은 다른 자료형과 더해도 문자열 반환
증감 연산자 ++,--
- 피연산자를 1씩 증가 혹은 1씩 감소시길 때 사용하는 연산자이다.
- 피연산자가 하나 뿐인 단항 연산자에 해당
연산자 | 반환 | 설명 |
---|
a++ | 값 그대로 | 연산 수행 후, 피연산자 값 1 증가 |
++a | 1 증가한 값 | 피연산자 값 1 증가시킨 후, 연산 수행 |
a-- | 값 그대로 | 연산 수행 후, 피연산자 값 1 감소 |
--a | 1 감소한 값 | 피연산자 값 1 감소시킨 후, 연산 수행 |
+a | 값 그대로 | 피연산자의 값은 바뀌지 않는다. |
-a | 양음을 반전 | 피연산자의 양음을 반전시킨다. |
let x = 1;
let y = 2;
console.log(
x++, x,
++x, x,
y--, y,
--y, y,
+x,
-y
);
대입 연산자 +=,-=,*=,/=,%=,**=
- 변수에 값을 대입할 때 사용되는 이항 연산자이다.
- 피연산자의 결합 방향은 오른쪽에서 왼쪽으로 결합한다.
연산자 | 연산 | 설명 |
---|
i = x | i = x | 왼쪽 피연산자에 오른쪽 피연산자를 대입 |
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 | 왼쪽 피연산자에 두 피연산자의 제곱값을 대입 |
let x = 4;
let y = 2;
console.log(
x += y,
x -= y,
x *= y,
x /= y,
x %= y,
x **= y
);
비교 연산자 <,<=,>=,>
항등 연산자 ==,===,!==,!===
- 피연산자 사이의 상대적인 크기를 판단하여, 참
ture
또는 거짓 false
을 반환하는 연산자
- 두 개의 피연산자를 가지는 이항 연산자이다.
연산자 | 의미 | 비고 |
---|
x == y | 값이 같다. | |
x === y | 자료형도 값도 같다. | 권장 |
x != y | 값이 다르다. | |
x !== y | 자료형 또는 값이 다르다. | 권장 |
x < y | 왼쪽보다 오른쪽의 값이 더 크다. | 문자열: 사전순상 x가 먼저온다. |
x <= y | 왼쪽보다 오른쪽의 값이 더 크거나 같다. | |
x > y | 오른쪽보다 왼쪽의 값이 더 크다. | 문자열: 사전순상 y가 먼저온다. |
x >= y | 오른쪽보다 왼쪽의 값이 더 크거나 같다. | |
console.log('1' == 1);
console.log(1 === '1');
console.log(
'안녕하세요~' === "안녕하세요~",
`안녕하세요~` === '안녕하세요~'
);
console.log('Hello!' === 'hello!');
console.log('100' > 90);
논리 연산자 &&, ||, !
- 피연산자들 사이의 논리식을 판단하여 참
true
또는 거짓 false
을 반환하는 연산자
AND
, OR
, NOT
연산자가 있다.
- 단항 연산자인
NOT
연산자를 제외한 두 종류의 연산자는 모두 이항 연산자이다.
연산자 | 연산식 | 설명 |
---|
AND | && | 논리식이 모두 참이면 true |
OR | | |
NOT | ! | 논리식의 결과가 참이면 false, 결과가 거짓이면 ture |
const value1 = false;
const value2 = 4 < 2;
console.log('or: ${value1 || value2 || check()}');
function check() {
for (let i = 0; i < 10; i++) {
console.log('바봉');
}
return true;
}
or연산자 ||
는 피연산자들 중 하나라도 참이면 true 를 반환
or연산자 ||
는 true 값이 나오는대로 작업을 breck 함
연산 부하가 적은, true 가능성이 높은 변수를 첫번째로 선언 (리소스 절약)
함수 check()
는 다른 피연산자들보다 작업이 무겁기 때문에 먼저 나열하는 것을 추천 !
console.log('or: ${value1 || value2 || check()}');
console.log('or: ${check() || value1 || value2}');
삼항 연산자 ~? ~ : ~
- 유일하게 세 개의 피연산자를 가진 연산자이다.
if...else
조건문의 대체제로 간편하게 쓰이기도 한다.
- 조건문, 참일 경우 실행할 표현식, 거짓일 경우 실행할 표현식 세가지가 필요하다.
연산자 | 형태 | 설명 |
---|
삼항연산자 | 조건문 ? 참실행문 : 거짓실행문 | 조건문이 참일 경우 첫번째 표현식 실행 |
| | 조건문이 거짓일 경우 두번째 표현식 실행 |
let x = ture;
let y = x ? '참입니다요' : '거짓입니다요';
console.log(y)