[제대로 파는 자바스크립트] 1 - 2. 연산자

2023. 8. 30. 11:28·FrontEnd/JavaScript

# 비교 연산자

연산자 의미 권장
x == y 값이 같다.  
x === y 자료형, 값이 같다 권장
x != y 값이 다르다.  
x !== y 자료형 또는 값이 다르다. 권장
x <= y 사전순으로 x가 먼저 나오거나 같다.  
x > y 사전순으로 y가 먼저 나온다.  
x >= y 사전순으로 y가 먼저 오거나 같다.  

 

console.log(
    '1' == '1',
    '1' == 1,
    '1' == 2
);

// true true false

 

# 무한대 (-Infinity o)

let x = 1 / 0;
console.log(x, typeof x);

// Infinity number



# 숫자가 아닌 것  (-NaN  x)

let x = 1 / 'abc';
let y = 2 * '가나다';
let z = NaN;

console.log(x, typeof x);
console.log(y, typeof y);
console.log(z, typeof z);

// NaN number
// NaN number
// NaN number

 

NaN인지 확인하는 방법

let x = 1 / 'abc';

console.log(
  x,
  x == NaN,
  x === NaN,
  isNaN(x), // 숫자가 아닐 시 true
  Number.isNaN(x) // 보다 엄격한 버전
);

// NaN false false true true
//함수형으로 써줘야 NaN확인 가능

 

# 부동소수점 계산 오류

0.1+0.2
//0.3이 나오지 않고
//0.30000000000000004 이 나오게 됩니다.

이런 오류는 나중에 라이브러리를 사용해서 고칠 수 있으니 일단 알고 넘어갑시다.

 

# Truthy / Falsy

console.log(
  1.23 ? true : false,
  -999 ? true: false,
  '0' ? true : false,
  ' ' ? true : false,
  Infinity ? true : false,
  -Infinity ? true : false,
  {} ? true : false,
  [] ? true : false,
);

//다 true
console.log(
  0 ? true : false,
  -0 ? true : false,
  '' ? true : false,
  null ? true : false,
  undefined ? true : false,
  NaN ? true : false,
);

//다 false

 

# ??  - null 병합 연산자

: || 와 달리, falsy가 아닌 null 또는 undefined만 대체

let a = false;
let b = 0;
let c = '';
let d = null;
let e;

console.log(
  a ?? '기본값',
  b ?? '기본값',
  c ?? '기본값',
  d ?? '기본값',
  e ?? '기본값',
);

// false 0 '' '기본값' '기본값'
let x = 0;
let y = '';
let z = null;

x ||= 100; // x값이 false일 때만 뒤의 값 실행
y &&= '있어야 바뀜'; //y값이 true일 때만 뒤의 값 실행
z ??= '기본값'; //z값이 null or undefined일 때만 뒤의 값 실행

console.log(x, y, z);

// 100 '' '기본값'

참고

 

제대로 파는 자바스크립트(JavaScript) - by 얄코 - 인프런 | 강의

코알못도 따라올 수 있는 친절한 강좌! 현업 개발자는 자바스크립트 박사로 들어주는 끝판왕 강좌!, 한 번 수강하면 다른 강의가 필요 없도록제대로 JS에 파고들어 봐요 🛠️ 🎓  대학교 이메

www.inflearn.com

 

'FrontEnd > JavaScript' 카테고리의 다른 글

[제대로 파는 자바스크립트] 1 - 3. copy of value VS copy of reference  (0) 2023.08.30
[제대로 파는 자바스크립트] 1 - 1. 기본 명령어와 자료형  (0) 2023.08.29
'FrontEnd/JavaScript' 카테고리의 다른 글
  • [제대로 파는 자바스크립트] 1 - 3. copy of value VS copy of reference
  • [제대로 파는 자바스크립트] 1 - 1. 기본 명령어와 자료형
gwee_99
gwee_99
bE bETTER!
  • gwee_99
    얼렁이와 뚱땅이
    gwee_99
  • 전체
    오늘
    어제
    • ====Category====
      • Algorithms(CT)
        • Programmers
        • Baekjoon
        • Goorm
      • Web
        • Error 해결
      • BackEnd
        • Spring
        • JPA
      • FrontEnd
        • HTML.CSS
        • JavaScript
      • Language
        • Java
      • Cloud
      • CSTS
      • Books
        • IT 5분 잡학사전
      • 일상
  • 블로그 메뉴

    • 홈
    • 방명록
    • 글쓰기
    • 관리
  • 링크

    • 깃허브
  • 공지사항

  • 인기 글

  • 태그

    호텔 대실
    Lv.1
    DP
    IT 잡학사전
    Til
    lv2
    코딩테스트
    제대로 파는 자바스크립트
    구름톤 챌린지
    BOJ
    HTML
    존안님
    그리디
    BFS
    노마드코더
    DFS
    IT 5분 잡학사전
    구름
    Greedy
    개발자북클럽
    LV.2
    따라하며 배우는 html css
    LV.3
    java
    프로그래머스
    자바
    백준
    스택
    인프런
    lv.4
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
gwee_99
[제대로 파는 자바스크립트] 1 - 2. 연산자
상단으로

티스토리툴바