javascript 함수에 매개 변수로 전달하는 중입니다. UI에서 왔기 때문에 0으로 채 웁니다. 하지만 (아마도) "이상한"행동을하는 것 같습니다.Javascript, 왜 8 진수로 처리해야합니까?
console.log(0000020948); //20948
console.log(0000022115); //9293 which is 22115's octal
console.log(parseInt(0000022115, 10)); // 9293 which is 22115's octal
console.log(0000033959); //33959
console.log(20948); //20948
console.log(22115); //22115
console.log(33959); //33959
어떻게하면 그들이 올바르게 numebr로 파싱되는지 확인할 수 있습니까? (10 진수)
편집 :
그냥 명확하게 :그 숫자는 서버에서 온 제로 패딩 문자열입니다. 그리고 나는 각각을위한 삭제 버튼을 만들고있다.
처럼 :
function printDelButton(value){
console.log(typeof value); //output string
return '<a href="#" onclick="deleteme('+value+')"><img src="images/del.png"></a>'
}
and
function printDelButton(value){
console.log(typeof value); //output numeric
console.log(value); //here output as octal .... :S
}
나는 시도 : console.log(parseInt(0000022115, 10)); // 9293 which is 22115's octal
여전히를 진수
숫자를 0으로 채우는 대신 공백을 사용하십시오. –
UI가 0으로 채워진 이유는 무엇입니까? – jglouie
스크립트에''use strict "지시문을 사용하는 것이 좋습니다. 8 진 리터럴을 사용하면 오류가 발생하고 디버그하기가 쉬워집니다. –