본문 바로가기
JavaScript

연산자

by 해-온 2023. 2. 19.

⭐️ 산술 연산자

피연산자를 계산해 새로운 수를 만드는 것을 뜻한다.

우리가 아는 '+', '-' 등이 산술 연산자에 속한다.

 

console.log(4 + 2); // 6
console.log(4 - 2); // 2
console.log(4 * 2); // 8
console.log(4 / 2); // 2
console.log(4 % 2); // 0
console.log(4 ** 2); // 16

 

산술 연산자는 1개의 피연산자를 계산해 새로운 숫자값을 만들 수도 있다.

 

let x = 1;
x++;
console.log(x); // 2

x--;
console.log(x); // 1

 

'++'와 '--'를 사용할 때 주의할 점이 있다.

++를 먼저 쓸 경우 (++a) 값을 증가시키고 필요한 연산을 하는 것에 반해,

++를 나중에 쓸 경우 (a++) 필요한 연산을 먼저하고 값을 증가시킨다.

 

a = 0;
let b = a++;
console.log(b); // 0

a = 0;
let c = ++a;
console.log(c); // 1

 

'+'는 피연산자 중 하나 이상이 문자열일 경우 문자열을 연결해 준다.

 

let text = '안녕' + 2
console.log(text); // 안녕2

text = '1' + 1;
console.log(text); //11

 

⭐️ 할당 연산자

우항의 결과를 좌항의 변수에 할당하는 연산자이다.

 

let a = 1;

a += 1;
console.log(a); // 2

a -= 1;
console.log(a); // 1

a *= 2;
console.log(a); // 2

 

⭐️ 비교 연산자

좌항과 우항의 피연산자를 비교하고 결과를 true, false로 반환하는 연산자이다.

'=='의 경우 값만 비교하지만 '==='의 경우 값과 타입 모두 비교한다.

 

console.log(2 == 2); // true
console.log(2 == '2'); // true
console.log(2 === '2'); // false

 

불일치의 경우도 같다.

'!='의 경우 값만 다른지 비교하고, '!=='의 경우 값과 타입이 모두 다른지 비교한다.

 

console.log(2 != 3); // true
console.log(2 != '2'); // false
console.log(2 !== '2'); // true

 

객체의 경우 변수가 객체의 주소를 담고 있기 때문에 비교 시 false가 나온다.

다만, 객체의 값에 직접 접근할 경우는 true가 나옴을 볼 수 있다.

 

const obj1 = {
  lastName: '홍',
};

const obj2 = {
  lastName: '김',
};

console.log(obj1 == obj2); // false
console.log(obj1 === obj2); // false
console.log(obj1.lastName == obj2.lastName); // true
console.log(obj1.lastName === obj2.lastName); // true

 

대소 비교도 가능하다.

 

console.log(1 > 3); // false
console.log(1 < 3); // true

 

⭐️ 논리 연산자

OR(||), AND(&&), NOT(!) 세 종류의 논리 연산자가 있다.

 

// OR (||)
console.log( true || true );   // true
console.log( false || true );  // true
console.log( true || false );  // true
console.log( false || false ); // false

// AND(&&)
console.log( true && true );   // true
console.log( false && true );  // false
console.log( true && false );  // false
console.log( false && false ); // false

// NOT(!)
let boolean = true;
console.log(!boolean); // false

 

'&&'의 우선순위가 '||' 보다 높다.

 

⭐️ 삼항 조건 연산자

조건식 ? 조건식이 true일 때 반환할 값 : 조건식이 false일 때 반환할 값

 

let accessAllowed = (age >= 18) ? console.log('18세 이상입니다') : console.log('18세 미만입니다');

 

'JavaScript' 카테고리의 다른 글

객체  (0) 2023.02.21
함수  (0) 2023.02.19
제어문  (0) 2023.02.19
변수와 데이터 타입  (0) 2023.02.13
함수 이름 짓기  (0) 2022.10.27

댓글