본문 바로가기

개발 공부

[JS] Number()와 parseInt와 차이점

알고리즘 문제를 풀면서 형변환을 하기위해서 Number()와 parseInt()를 많이 사용하는데, 쓰는 와중에 이 둘의 차이점이 무엇인지 궁금해져서 학습을 하게 되었다.

Number(str)란

  • 문자열을 인자로 받으면 해당 문자열을 숫자로 형변환을 시켜줍니다.
    //1. 문자열을 숫자로 변환
    let number = Number("187")//187
    //2. 숫자와 문자가 섞여있는 문자열의 경우
    let number = Number("580원")//NaN
    //3. 소수점의 숫자인 경우
    let number = Number("19.345")//19.345
    
## parseInt(str)란
- Number(str)와 동일하게 문자열을 인자로 받으면 해당 문자열을 숫자로 형변환을 시켜줍니다.
``` javascript
//1. 문자열을 숫자로 변환
let number = Number("187")//187
//2. 맨 앞에 숫자가 나오고 뒤에 문자가 나오는 경우
let number = Number("580원")//580
//3. 맨 앞에 문자가 나오고 숫자가 나오는 경우
let number = Number("지출금액: 580원")//NaN
//3. 소수점의 숫자인 경우
let number = Number("19.345")//19
  • 둘의 차이는 숫자와 문자가 섞여있는 경우와 소수점의 수가 나올 경우에서 차이점을 발견할 수 있습니다.