산술 연산자
자바스크립트에서 제공하는 산술 연산자의 종류는 다음과 같다.
- + : 덧셈
- - : 뺄셈
- * : 곱셈
- / : 나눗셈
- % : 나머지
- ** : 지수
console.log(1 + 2); // 3
console.log(3 - 1); // 2
console.log(3 * 2); // 6
console.log(6 / 2); // 3
console.log(10 % 2); // 0
console.log(2 ** 3); // 8
console.log(2 + "살!"); // 2살!
+ 연산자는 피연산자에 문자 데이터 타입이 있는 경우, 숫자 덧셈이 아니라 문자를 결합한다.
증감 연산자
숫자를 증가시키거나 감소시키기 위해 사용되는 연산자이다.
let number = 10;
number++;
console.log(number); // 11
number--;
console.log(number); // 10
비교 연산자
자바 스크립트에서는 다음과 같은 비교 연산자를 사용할 수 있다.
- < 또는 > : 크거나 작은지 비교
- <= 또는 >= : 크거나 (작거나) 같은지 비교
- == 또는 === : 같은지 비교
- != 또는 !== : 동등한 지 비교
const a = 10;
const b = 20;
console.log(a < b); // true
console.log(a > b); // false
console.log(a === b); // false
console.log(a !== b); // true
논리 연산자
자바스크립트에서 제공하는 논리 연산자의 종류는 다음과 같다.
- && : AND
- || : OR
- ! : NOT
const a = 2 < 3;
const b = 10 > 20;
console.log(a && b); // false
console.log(a || b); // true
console.log(!a); // false
삼항 연산자
삼항 연산자는 조건의 결과에 따라 다른 실행 결과를 가지는 연산을 수행하며, 3개의 피연산자를 가진다.
const result = 2 < 3 ? 'Hello' : 'World';
console.log(result); // Hello
삼항 연산자를 사용할 때는 조건 ? 참일 경우 실행 결과 : 거짓일 경우 실행 결과 형식으로 식을 작성한다.
Nullish 연산자
널리쉬 연산자는 여러 개의 피연산자 중 값이 확정되어 있는 피연산자 (변수)를 찾는 연산을 수행한다.
const a = undefined;
const b = null;
const c = 'Hello';
console.log(a ?? b ?? c); // Hello
비트 연산자
비트 연산자란 인수를 32비트 정수로 변환한 다음 이진 연산을 수행하는 연산자를 의미한다.
- & : AND
- | : OR
- ~ : NOT
- ^ : XOR
- << : LEFT SHIFT
- >> : RIGHT SHIFT
웹 개발에 사용되는 자바스크립트의 경우, 이러한 비트 연산자를 지원하기는 하지만 사용할 일이 거의 없다.
대입 연산자
대입 연산자는 우리가 잘 알고 있는 =와, 산술·비트·논리·Nullish 연산자와 대입 연산을 합친 복합 대입 연산자로 구분할 수 있다.
- +=
- -=
- *=
- /=
- %=
- **=
- &&=
- ||=
- ??=
전개 구문
전개 구문 또는 연산자란 반복이 가능한 객체에 적용할 수 있는 문법으로, 배열이나 객체, 문자열의 요소를 각각 꺼내서 펼친다.
const a = 'hello';
const b = 'world';
console.log(...a, ...b); // h e l l o w o r l d
const arr = [10, 20];
function sum(a, b) {
return a + b;
}
console.log(sum(...arr)); // 30
'Language > JavaScript' 카테고리의 다른 글
| [JavaScript] 반복문 (0) | 2024.09.16 |
|---|---|
| [JavaScript] 조건문 (1) | 2024.09.16 |
| [JavaScript] Set과 Map (0) | 2024.09.16 |
| [JavaScript] 참조 데이터 타입 (0) | 2024.09.16 |
| [JavaScript] 원시 데이터 타입 (0) | 2024.09.16 |