>웹 프론트엔드 >JS 튜토리얼 >자바스크립트에서 선행 0(제로 패딩)을 추가하는 여러 가지 방법

자바스크립트에서 선행 0(제로 패딩)을 추가하는 여러 가지 방법

高洛峰
高洛峰원래의
2017-01-07 16:21:143850검색

머리말

우리 모두 알고 있듯이 JavaScript의 숫자에는 앞에 0이 없기 때문에 앞에 0을 추가하려면 자체 연산을 수행해야 하고 이를 문자열로 변환해야 합니다.

총 4자리 숫자와 앞에 0이 붙은 데이터가 생성된다면 우리가 일반적으로 생각할 수 있는 방법은 다음과 같습니다.

function addPreZero(num){
 if(num<10){
  return &#39;000&#39;+num;
 }else if(num<100){
  return &#39;00&#39;+num;
 }else if(num<1000){
  return &#39;0&#39;+num;
 }else{
  return num;
 }
}

이 방법의 아이디어 현재 데이터의 자릿수에 따라 해당하는 선행 0의 수를 보충하는 것은 비교적 간단합니다. 그러나 이 알고리즘은 선행 0이 많이 필요한 경우 많은 if...else를 작성해야 합니다. 쓰여진다.

그래도 이 아이디어를 바탕으로 먼저 이 숫자의 자릿수를 계산한 다음 해당하는 0을 직접 추가할 수 있습니다.

function addPreZero(num){
 var t = (num+&#39;&#39;).length,
  s = &#39;&#39;;
  
 for(var i=0; i<4-t; i++){
  s += &#39;0&#39;;
 }
  
 return s+num;
}

이 방법의 구현은 현재 num의 자릿수는 모든 선행 0을 계산하는 데 사용된 다음 num과 연결됩니다.

이를 바탕으로 다음과 같이 생각할 수도 있습니다. 예를 들어 앞에 0이 붙은 총 10자리 데이터가 필요한 경우 먼저 현재 숫자가 몇 자리인지에 관계없이 먼저 즉, 접두사 0을 먼저 추가한 다음 문자열의 마지막 10자리를 가로채면 필요한 데이터를 얻을 수 있습니다.

function addPreZero(num){
 return (&#39;000000000&#39;+num).slice(-10);
}

요약

위 내용은 전체입니다. 이 글의 내용에 따르면, 원하는 결과를 얻는 방법은 여러 가지가 있으며, 가능한 한 많은 방법을 생각해내도록 노력해야 합니다. 우리는 더 나은 방법을 선택합니다. 이 글의 내용이 모든 분들의 공부나 업무에 조금이나마 도움이 되었으면 좋겠습니다. 궁금한 사항이 있으시면 메시지를 남겨주세요.

자바스크립트에 선행 0(제로 패딩)을 추가하는 여러 방법에 대한 자세한 관련 기사를 보려면 PHP 중국어 웹사이트에 주목하세요!


성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.