programing tip

Javascript의 숫자에서 선행 0 제거

itbloger 2020. 7. 9. 19:22
반응형

Javascript의 숫자에서 선행 0 제거


가능한 중복 :
Javascript에서 문자열의 선행 0을 자릅니다

Javascript의 숫자에서 선행 0을 제거하는 가장 간단하고 브라우저 간 호환 가능한 방법은 무엇입니까?

예를 들어 텍스트 상자 값이 014 또는 065 인 경우 14 또는 65 만 반환해야합니다.


parseInt 시도하십시오 .

parseInt("065", 10);


두 번째 매개 변수는 기수에 대한 것이며 문서에 따라 항상 지정해야합니다. MDN은 말합니다.

어근

위에서 언급 한 문자열의 기수를 나타내는 정수입니다. 독자 혼란을 제거하고 예측 가능한 동작을 보장하려면 항상이 매개 변수를 지정하십시오. 기수가 지정되지 않은 경우 구현에 따라 결과가 다릅니다.
.............
.............
기수가 정의 또는 0 (또는없는) 경우, 자바 스크립트는 다음을 가정합니다 :

  • 입력 문자열 이 "0x"또는 "0X"로 시작하면 기수는 16 (16 진수)이고 나머지 문자열은 구문 분석됩니다.
  • 입력 문자열 이 "0"으로 시작하면 기수는 8 (8 진수) 또는 10 (10 진수)입니다. 어떤 기수가 선택되는지는 구현에 따라 다릅니다. ECMAScript 5는 10 (10 진수)이 사용되도록 지정하지만 일부 브라우저에서는 아직이 기능을 지원하지 않습니다. 이러한 이유로 parseInt를 사용할 때는 항상 기수를 지정하십시오 .
  • 입력 문자열 이 다른 값으로 시작하면 기수가 10 (10 진수)입니다.

예를 들어, 일부 구현에서는 parseInt("01803")을 산출 1합니다. 목표가 get이라고 가정하면 1803기수가 10 인 parseInt를 호출하여 기본 10 진수 시스템에서 구문 분석이 수행되도록하십시오. 즉 : parseInt("01803", 10)will yield 1803. 정수가 아닌 값의 경우 parseInt ()는 숫자를 반올림하여 정수로 반환합니다. paseInt("018.03", 10)생산할 것이다 18.


정규 표현식 :

"014".replace(/^0+/, '')

왜 이런 일을하고 싶은지는 분명하지 않습니다. 올바른 숫자 값을 얻으려면 단항 + [docs]를 사용할 수 있습니다 .

value = +value;

텍스트의 서식을 지정하려면 정규식이 더 좋습니다. 내가 말하고자하는 가치에 달려 있습니다. 정수만 있다면

input.value = +input.value;

괜찮습니다. 물론 부동 소수점 값에도 작동하지만 포인트 뒤에있는 자릿수에 따라 숫자로 변환하고 문자열로 다시 변환하면 (적어도 표시하기 위해) 일부를 제거 할 수 있습니다.

참고 URL : https://stackoverflow.com/questions/6676488/remove-leading-zeros-from-a-number-in-javascript

반응형