Number()와 parseInt(), parseFloat()의 차이점

이예빈·2022년 6월 24일
0

JavaScript

목록 보기
4/26
post-thumbnail

JavaScript에서 값을 number 타입으로 변환해주는 Number()생성자와 함수 parseFloat(), parseInt()의 차이점을 알아보자.

- Number()와 parseFloat()는 parameter가 1개만 들어갈 수 있고,
  parseInt()는 2개까지 들어갈 수 있다.
  
- Number()는 boolean 타입을 숫자로 반환하지만
  parseInt()와 parseFloat()는 NaN을 반환한다.
  
- Number()는 null과 빈 문자열을 0으로 반환하지만
  parseInt()와 parseFloat()는 NaN을 반환한다.
  
- Number()와 parseFloat()는 소수를 그대로 반환하지만
  parseInt()는 소수점 이전까지 반환한다.

1. Number()

let num1 = Number(1 < 2);      // 1
let num2 = Number(1 > 2);      // 0
let num3 = Number(null);       // 0
let num4 = Number("");         // 0
let num5 = Number(1.5);        // 1.5
  • num1: 값이 true인 경우 1 반환
  • num2: 값이 false인 경우 0 반환
  • num3: 값이 null인 경우 0 반환
  • num4: 값이 빈 문자열인 경우 0 반환
  • num5: 값이 소수인 경우 소수 그대로 반환

2. parseInt()

let int1 = parseInt(1 < 2);     // NaN
let int2 = parseInt(null);      // NaN
let int3 = parseInt("");        // NaN
let int4 = parseInt("AF",16);   // 175
let int5 = parseInt("10",2);    // 2
let int6 = parseInt(1.5);       // 1 
  • int1: 값이 boolean 타입인 경우 NaN 반환
  • int2: 값이 null인 경우 NaN 반환
  • int3: 값이 빈 문자열인 경우 NaN 반환
  • int4: 값이 16진수 값과 16 인 경우 16진수를 10진수로 변환하여 반환
  • int5: 값이 2진수 값과 2 인 경우 2진수를 10진수로 변환하여 반환
  • int6: 값이 소수인 경우 소수점 이전까지 반환

3. parseFloat()

let flo1 = parseFloat(1 < 2);  // NaN
let flo2 = parseFloat(null);   // NaN
let flo3 = parseFloat("");     // NaN
let flo4 = parseFloat(1.5);    // 1.5
  • flo1: 값이 boolean 타입인 경우 NaN 반환
  • flo2: 값이 null인 경우 NaN 반환
  • flo3: 값이 빈 문자열인 경우 NaN 반환
  • flo4: 값이 소수인 경우 소수 그대로 반환
profile
temporary potato

0개의 댓글