• 산술 연산자

산술연산자는 사칙연산과 같은 작업을 하는 연산자를 의미한다

  • + : 덧셈
  • - : 뺄셈
  • * : 곱셈
  • / : 나눗셈

위 4가지가 가장 기본적인 산술 연산자이다.

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

let a = 1 + 2 - (3 * 4) / 4;
console.log(a);

이런것도 가능하다. 이것 또한 산술연산자의 일부이다.

let a = 1;
a++;
++a;
console.log(a);

결과는 3이 나타납니다. ++는 특정 변수에 1을 바로 더해준다. 그런데, ++가 변수 이름 앞에 오는것과 뒤에 오는것에는 차이가 있다

let a = 1;
console.log(a++);
console.log(++a);

console.log(a++);를 할때는 1을 더하기 직전 값을 보여주고

console.log(++a);를 할때는 1을 더한 다음의 값을 보여준다는 차이가 있다.

덧셈 외에도 뺄셈도 똑같이 할수 있다.

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

결과는 0 이 나온다.

 

대입 연산자

대입 연산자는 특정 값에 연산을 한 값을 바로 설정 할 때 사요 할 수 있는 연산자 입니다. 예를 들어서 다음과 같은코드가 있다면

let a = 1;
a = a + 3;

위 코드를 대입 연산자를 사용하면 다음과 같이 작성 가능하다.

let a = 1;
a += 3;

덧셈 말고 다른 연산도 가능하다.

let a = 1;
a += 3;
a -= 3;
a *= 3;
a /= 3;
console.log(a);

결과는 1이 나타나게 됩니다.

 

논리 연산자

논리 연산자는, 불리언 타입(true 혹은 false)를 위한 연산자이다. 논리 연산자는 다음 장에서 우리가 if문을 배울 때 매우 유용하다.

총3가지가 있다.

  • ! : NOT
  • & : AND
  • || : OR

NOT

NOT 연산자는 true는 false로, false는 true로 바꿔준다.

const a = !true;
console.log(a);

a의 값은 false이다.

const b = !false;
console.log(b);

b값은 true가 된다.

AND

AND 연산자는 양쪽의 값이 둘다 true일때만 결과물이 true 이다.

const a = true && true;
console.log(a);

다음과 같은 상황엔 모두 false이다

let f = false && false;
f = false && true;
f = true && false;

OR

OR 연산자는 양쪽의 값 중 하나라도 true라면 결과물이 true이다. 그리고, 두값이 둘다 false일 때에만 false이다.

다음 상황엔 t값은 true이다.

let t = true || false;
t = false || true;
t = true || true;

반면에 다음 상황엔 false이다

let f = false || false;

연산 순서

사칙연산을 할떄 곱셈 나눗셈이 먼저고 그 다음이 덧셈 뺼셈인 것 처럼, 논리 연산자도 순서가 있다. 순서는 NOT -> AND -> OR 이다. 예를 들어 다음과 같은 코드가 있다고 가정해 보자.

const value = !((true && false) || (true && false) || !false);

괄호로 감싸져 있을떄는 가장 마지막에 처리를 하니까 맨 앞 NOT은 나중에 처리한다.

우선 NOT을 처리한다.

!((true && false) || (true && false) || true);

그 다음엔 AND를 처리한다.

!(false || false || true);

or 연산자를 좌측에서 우측 방향으로 처리를 하게 되면서 다음과 같이 처리된다.

!true;

결국 결과값은 false가 된다.

비교 연산자

비교 연산자는 두값을 비교 할떄 사용 할수 있다.

 

두 값이 일치 하는지 확인

const a = 1;
const b = 1;
const equals = a === b;
console.log(equals);

===는 두 값이 일치 하는지 확인해 준다. 일치한다면, true 일치하지 않는다면 false가 나타난다. 위 코드의 경우엔 true가 나타난다.

두 값이 일치 하는지 확인 할떄 =를 3번 사용하는데, 2개로도 비교를 할수는 있다.

const a = 1;
const b = 1;
const equals = a == b;
console.log(equals);

==와 ===의 차이점은 ==는 타입검사 까지는 하지 않는다는 것이다.

예를 들어 == 를 사용하면 숫자 1과 문자'1'이 동일한 값으로 간주된다.

const a = 1;
const b = '1';
const equals = a == b;
console.log(equals);

결과 : true

그리고, 0과 false도 같은 값으로 간주 된다.

const a = 0;
const b = false;
const equals = a == b;
console.log(equals);

결과 : true;

 

그리고 undefined와 null도 같은 값으로 간주된다.

const a = null;
const b = undefined;
const equals = a == b;
console.log(equals);

결과 : true;

 

따라서 ==보단 ===를 사용하는것이 실수를 줄일수가 있어서 ===를 더 추천한다.

 

두 값이 일치하지 않는지 확인

두 값이 일치하지 않는지 확인 할떄는 !==를 사용하면 된다.

const value = 'a' !== 'b';

결과는 true가 된다

!=를 사용하면 타입 검사를 하지 않는다.

console.log(1 != '1');
console.log(1 !== '1');

!==를 사용하는것을 추천한다.

 

크고 작음

두 값 중에서 무엇이 더 크고 작은지 비교하기 위해서 다음 연산자를 사용할수 있다.

const a = 10;
const b = 15;
const c = 15;

console.log(a < b); // true
console.log(b > a); // true
console.log(b >= c); // true
console.log(a <= c); // true
console.log(b < c); // false;

 

문자열 붙이기

두 문자열을 붙일 떄에는 + 로 할 수 있다

const a = '안녕';
const b = '하세요';
console.log(a + b); // 안녕하세요

'공부내용정리 > JavaScript' 카테고리의 다른 글

함수  (0) 2021.04.13
조건문  (0) 2021.04.12
변수와 상수  (0) 2021.04.10
JavaScript Async - Await  (0) 2021.04.08
JavaScript Promise  (0) 2021.04.08

+ Recent posts