Q. 알고리즘 문제를 풀며 문자열을 숫자로 바꿀 때 Number을 사용했는데 다른 사람들의 코드를 보며 parseInt도 많이 사용됨을 알았다. 그리고 이 둘의 차이가 궁금했다.
Number(str)
- Number 메서드는 문자열을 인자로 받으면 해당 문자열을 숫자로 바꿔줌
const number = Number("12345"); // 12345
- 문자열이 숫자가 아닌 경우 num에는 NaN이 저장됨
const price = Number('1000원'); // NaN
- 소수점은 모두 표시되며, 숫자형으로 바뀜
const num = Number('12.345'); // 12.345
parseInt(str)
- Number(str)와 동일하게 문자열을 인자로 받으면 해당 문자열을 숫자로 바꿔줌
const number = Number("12345"); // 12345
- 문자열이 숫자가 아닌 경우
- 문자열이 숫자로 시작하는 경우 : 숫자가 끝날 때까지만 형 변환을 하여 num에 저장
- 문자열 시작이 숫자가 아닌 경우 : num이 NaN이 저장
const price = parseInt('1000원'); // price에 1000이 저장
const price = parseInt('가격 : 1000원'); // price NaN이 저장
- 소수점은 정수만 뽑아서 표시되며 숫자형으로 바뀜
const num = parseInt('12.345'); // 12
'JS' 카테고리의 다른 글
[JS] join() 메서드 (0) | 2023.01.13 |
---|---|
[JS] Math 객체 (0) | 2023.01.13 |
[JS] const vs let vs var (0) | 2023.01.13 |
[JS]백준에서 node.js 입출력 받기 (0) | 2023.01.09 |
[JS] match()함수 (0) | 2023.01.09 |