KimMinJun
Coding Note
KimMinJun
전체 방문자
오늘
어제
  • 분류 전체보기 (486)
    • ALGORITHM (11)
      • 정렬 (6)
      • 최단경로 (1)
      • 자료구조 (1)
      • 슬라이딩 윈도우 (1)
      • etc (2)
    • Git (5)
    • Web (24)
      • Vanilla JS (13)
      • TS (2)
      • React (7)
      • ETC (1)
    • React 공식문서 (번역, 공부) (11)
      • Quick Start (2)
      • Installation (0)
      • Describing the UI (9)
      • Adding Interactivity (0)
      • Managing State (0)
      • Escape Hatches (0)
    • Next.js 공식문서 (번역, 공부) (3)
      • Getting Started (2)
      • Building Your Application (1)
    • PS (431)
      • 백준 (187)
      • Programmers (104)
      • CodeUp (21)
      • STL (3)
      • 제코베 JS 100제 (50)
      • SWEA (0)
      • LeetCode (65)
    • IT (1)

블로그 메뉴

  • 홈
  • 태그
  • 방명록
  • 관리

공지사항

인기 글

태그

  • Level 0
  • codeup
  • C
  • 제코베 JS 100제
  • 수학
  • programmers
  • 정렬
  • Level 1
  • 그래프
  • 문자열
  • recursion
  • Level 2
  • 다이나믹 프로그래밍
  • Level1
  • js
  • tree
  • string
  • 백준
  • LeetCode
  • C++

최근 댓글

최근 글

hELLO · Designed By 정상우.
KimMinJun

Coding Note

Web/Vanilla JS

Vanilla JS / Number() 와 parseInt()

2020. 4. 4. 23:43

나는 학교에서 가르침을 받을때도, parseInt()만 배워서 Number()라는 것이 있는 줄 몰랐다.

알고리즘 문제를 풀면서, 내가 parseInt()를 사용한 자리에 Number()를 사용한 사람들을 보고 의구심이 들었다.

과연 둘은 어떻게 다를까?

 

 

 

Number(str)

  • 만약 str을 숫자로 변환할 수 없으면 NaN을 리턴한다.
  • 생성자로써 사용하지 않으면(new 연산자를 사용하지 않으면) Number를 사용하여 형변환을 할 수 있다.
const num1 = Number("100입니다"); // NaN을 리턴한다.
const num2 = Number("100"); // 숫자 100을 리턴한다, num2 === 100 은 true.
const num3 = new Number("100") // num3 === 100 은 false.

num2는 숫자로 형변환 되어서 숫자인 100과 값도 같고, 타입도 같지만,

num3는 새로운 '객체'를 만든 것 이어서, 객체로 리턴이 된다.

( '==='은 타입과 값이 모두 같아야 true이다.)

 


parseInt(str)

  • 첫 번째 글자가 숫자로 변환될 수 없다면, parseInt 는 NaN을 리턴한다.
  • str에 숫자와 글자가 혼합된 경우, 글자 전까지만 변환하고 그 뒤는 무시한다.
const num1 = parseInt("100입니다"); // 숫자 100을 리턴한다, "입니다"는 무시한다.
const num2 = parseInt("숫자100입니다"); // NaN을 리턴한다.
const num3 = parseInt("100"); // 숫자 100을 리턴한다.
저작자표시 (새창열림)

'Web > Vanilla JS' 카테고리의 다른 글

Modern Javascript / 코드 품질 - Chrome으로 디버깅  (0) 2021.07.07
Modern Javascript / 자료구조와 자료형  (0) 2021.07.01
Modern Javascript / 객체: 기본  (0) 2021.06.29
Modern Javascript / 자바스크립트 기본  (0) 2021.06.28
    'Web/Vanilla JS' 카테고리의 다른 글
    • Modern Javascript / 코드 품질 - Chrome으로 디버깅
    • Modern Javascript / 자료구조와 자료형
    • Modern Javascript / 객체: 기본
    • Modern Javascript / 자바스크립트 기본
    KimMinJun
    KimMinJun

    티스토리툴바