javascript, jquery로 숫자 (모든 문자열)에서 선행 0을 제거하거나 잘라 내기위한 솔루션을 제안합니다.
'00000.5'
합니까 , 아니면 소수로 처리해야 합니까 (예 :) ?
javascript, jquery로 숫자 (모든 문자열)에서 선행 0을 제거하거나 잘라 내기위한 솔루션을 제안합니다.
'00000.5'
합니까 , 아니면 소수로 처리해야 합니까 (예 :) ?
답변:
문자열 시작 부분에서 0과 일치하는 정규식을 사용할 수 있습니다.
s = s.replace(/^0+/, '');
조금 늦을 수도 있지만 2 센트를 더하고 싶습니다.
문자열이 항상 앞에 0이있는 숫자를 나타내는 경우 '+'연산자를 사용하여 문자열을 숫자로 간단히 캐스트 할 수 있습니다.
예 :
x= "00005";
alert(typeof x); //"string"
alert(x);// "00005"
x = +x ; //or x= +"00005"; //do NOT confuse with x+=x, which will only concatenate the value
alert(typeof x); //number , voila!
alert(x); // 5 (as number)
문자열이 숫자를 나타내지 않고 0 만 제거하면 다른 솔루션을 사용하지만 숫자로만 필요한 경우 가장 짧은 방법입니다.
참고로 반대로 다음과 같이 빈 문자열을 연결하면 숫자가 문자열로 작동하도록 할 수 있습니다.
x = 5;
alert(typeof x); //number
x = x+"";
alert(typeof x); //string
누군가에게 도움이되기를 바랍니다
자바 스크립트에서 선행 0 (숫자 또는 모든 문자열)을 자르는이 솔루션을 얻었습니다.
<script language="JavaScript" type="text/javascript">
<!--
function trimNumber(s) {
while (s.substr(0,1) == '0' && s.length>1) { s = s.substr(1,9999); }
return s;
}
var s1 = '00123';
var s2 = '000assa';
var s3 = 'assa34300';
var s4 = 'ssa';
var s5 = '121212000';
alert(s1 + '=' + trimNumber(s1));
alert(s2 + '=' + trimNumber(s2));
alert(s3 + '=' + trimNumber(s3));
alert(s4 + '=' + trimNumber(s4));
alert(s5 + '=' + trimNumber(s5));
// end hiding contents -->
</script>
false
. 의 9999
두 번째 매개 변수로 substr
사용할 필요가 없습니다. 사용하십시오 while (s.substr(0,1) == '0') s = s.substr(1);
. 게다가이 코드 조각은 정말 오래 되어 보였고 태그 의 language
속성 script
은 오랫동안 사용되지 않았 으며 태그 내부에 주석을 사용 script
하는 것은 script
Internet Explorer 1.0과 같이 태그를 전혀 이해하지 못하는 브라우저에만 필요합니다 .
parseInt(value) or parseFloat(value)
이것은 잘 작동합니다.
이 시도,
function ltrim(str, chars) {
chars = chars || "\\s";
return str.replace(new RegExp("^[" + chars + "]+", "g"), "");
}
var str =ltrim("01545878","0");
여기 더
"parseInt"함수의 "radix"매개 변수를 사용해야합니다. https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/parseInt?redirectlocale=en-US&redirectslug=JavaScript%2FReference % 2FGlobal_Objects % 2FparseInt
parseInt ( '015', 10) => 15
사용하지 않으면 일부 자바 스크립트 엔진이 8 진수 parseInt ( '015') => 0으로 사용할 수 있습니다.