프로그램/Html & Js & Css
[펌] parseInt()와 Number() 사용시 주의사항
영혼과영혼의양식
2009. 3. 30. 11:10
function testChk(){
var i = "09";
document.write(parseInt(i));
document.write("<br>");
document.write(Number(i));
}
[결과]
0
9
자바스크립트에서 '0'으로 시작하는 스트링을 parseInt하면 8진법으로 파싱을 함
즉, "03"의 경우처럼 맨 앞자리가 '0'이면 이를 10진수가 아닌 8진수로 인식을 해버림
따라서 "08", "09"이런 글자는 결과가 무조건 0임
parseInt("01")은 8진법 파싱 규칙에 따라 1이 나오게 됨
10진수로 출력하기 원한다면
Number(i);
parseInt(i, 10);
이런방법을 사용하면 됨.
[출처] : http://www.okjsp.pe.kr/bbs?act=VIEW&seq=33422&bbs=bbs4&keyfield=content&keyword=Number(&pg=