본문 바로가기

자바스크립트

자바스크립트 : 연산자

연산자란, 연산을 하는데 사용하는 기호입니다.

그럼, 연산이란? 주어진 식을 계산하고, 결과를 얻어내는 과정입니다.

즉 연산자란, 변수에 대한 식을 계산하고, 결과를 얻어내는데 사용하는 기호입니다.

 

 

 

 

연산자의 종류

연산자는 크게 대입연산자, 증감연산자,  산술연산자, 논리연산자, 전개연산자로 구분됩니다.

 

대입연산자

대입연산자란, 특정 변수에 값을 대입시키는 연산자입니다.
할당연산자라고도 하며, = 를 사용합니다.

let a = 5;
const name = 'tadigrada';

 

증감연산자

변수의 값을 증가시키거나 감소시키는 데 사용합니다.

++ , -- 로 표현합니다.

let number = 1;

console.log(number++); // 출력 후 1 증가 = 1
console.log(++number); // 1 증가 후 출력 = 3

console.log(--number); // 1 감소 후 출력 = 2
console.log(number--); // 출력 후 1 감소 = 2

console.log(number); // line 7 확인용 = 1

 

산술연산자

덧셈, 뺄셈, 나눗셈, 곱셈, 나머지 연산 등의 사칙연산을 나타내는 연산자입니다.

증감연산자와 함께 쓰이기도 합니다.

+, -, *, / , % 로 사용합니다.

 

논리연산자

변수에 대한 조건을 걸고 참인지 거짓인지 확인하는 연산자입니다.

조건에 대한 부정을 나타낼 때는 ! 를 사용하고, (부정 연산자)

값에 대한 비교는 < , > , == 를 사용하며, (비교 연산자)

이를 이용한 3항 연산자 ( [조건] ? [참일 경우] : [거짓일 경우]; )를 사용하기도 합니다.

const true_value = true;
const false_value = false;

const big_num = 100;
const small_num = 1;


// 일반 출력
console.log(true_value);	// true
console.log(false_value);	// false

// 부정 연산자
console.log(!true_value);	// true의 부정 = false
console.log(!false_value);	// false의 부정 = true

// 비교 연산자
console.log(big_num < small_num);	// false
console.log(big_num > small_num);	// true
console.log(big_num == small_num);	// false
console.log(big_num == big_num);	// true

// 삼항 연산자
console.log(big_num<small_num?'100<1':'100>1');
// big_num < small_num 이 true인 경우 100<1 이 출력
// false인 경우 100>1 이 출력

 

전개 연산자

... 로 사용하며, 객체 또는 배열데이터의 값을 전개하는 데 사용합니다.

이를 이용하여 두개 이상의 객체 또는 배열데이터를 합치는데 사용하기도 합니다.

const numbers = [1,2,3]
console.log(numbers)
console.log(...numbers)

const n1 = [1,2,3]
const n2 = [2,3,4]

// n1 과 n2를 합칩니다.
n3 = n1.concat(n2)
n4 = [...n1,...n2]

// [ 1, 2, 3, 2, 3, 4 ]
console.log(n3) 
console.log(n4)


const o1 = {a:1, b:2, c:3}
const o2 = {b: 99, c: 100, d: 101}

const o3 = Object.assign({}, o1, o2)
const o4 = {...o1, ...o2}

// { a:1, b:99, c:100, d:101 }
console.log(o3)
console.log(o4)

'자바스크립트' 카테고리의 다른 글

JavaScript 비동기(2) - 콜백  (0) 2024.04.28
JavaScript 비동기(1) - 개요  (0) 2024.04.27
JavaScript 클래스  (0) 2024.04.26
JavaScript 모듈  (0) 2024.04.26
JavaScript - 선택적 체이닝(Optional chaining)  (0) 2024.04.25