Java Script

[JS] parseInt와 Number

은선은 2025. 2. 13. 20:06

1. parseInt()

  • 문자열을 정수로 변환.
  • 첫 번째 숫자를 찾으면 변환을 멈추고, 숫자가 아닌 문자가 나오면 무시.
  • 두 번째 인자로 radix(진수)를 지정할 수 있음. (기본값: 10진수)
console.log(parseInt("123px"));  // 123
console.log(parseInt("12.34"));  // 12 (소수점 이하 버려짐)
console.log(parseInt("007"));    // 7
console.log(parseInt("0xF", 16)); // 15 (16진수)
console.log(parseInt("abc"));    // NaN (숫자로 변환 불가)

 

2. Number()

  • 정수와 소수를 모두 변환 가능.
  • 공백이 있으면 자동으로 제거.
  • 숫자가 아닌 문자가 포함되면 NaN 반환.
console.log(Number("123"));   // 123
console.log(Number("12.34")); // 12.34 (소수 유지)
console.log(Number(" 007 ")); // 7 (공백 제거)
console.log(Number("123px")); // NaN (문자 포함 → 변환 불가)
console.log(Number("0xF"));   // 15 (16진수 자동 인식)
console.log(Number("abc"));   // NaN

 

 

🚀 주요 차이점 정리

특징 parseInt() Number()
반환 값 정수 (소수점 이하 버림) 정수 또는 소수
문자 처리 숫자가 아닌 문자가 나오면 무시하고 변환 가능 숫자가 아닌 문자가 있으면 NaN
진수 설정 parseInt("10", 2) → 2 (진수 지정 가능) Number()는 진수 지정 불가
공백 처리 숫자 변환 가능 공백 자동 제거 후 변환
NaN 반환 숫자가 없으면 NaN 숫자가 아닌 문자가 포함되면 NaN

 

 

언제 사용해야 할까?

정수를 변환할 때: parseInt()
소수까지 포함해 변환할 때: Number()
문자 포함된 숫자를 다룰 때: parseInt()
엄격하게 숫자만 변환할 때: Number()

console.log(parseInt("123abc")); // 123  (가능)
console.log(Number("123abc"));  // NaN  (불가능)
 

 

 

결론

  • 정수 변환: parseInt()
  • 실수까지 변환: Number()
  • 문자가 섞인 경우 parseInt() 사용, 숫자로만 변환할 땐 Number() 사용!

'Java Script' 카테고리의 다른 글

[javaScript] 스코프 체인과 클로저  (0) 2024.04.25
[error] comment are not permitted in json  (0) 2022.04.07
async, await, then  (0) 2022.03.29
Promise, then  (0) 2022.03.29
callback  (0) 2022.03.29