>  기사  >  웹 프론트엔드  >  JS에서 숫자를 완성하는 방법

JS에서 숫자를 완성하는 방법

(*-*)浩
(*-*)浩원래의
2019-05-18 18:00:503979검색

js에서 숫자를 완성하는 방법: 1. 반복을 통해 2. "num/Math.pow(10, length);" 메서드를 통해 3. "(Array(length).join('0' ) + num).slice(-length);"가 구현되었습니다.

JS에서 숫자를 완성하는 방법

예를 들어 출력 숫자의 길이를 10이라고 가정하고 고정하려고 합니다. 숫자가 123이면 0000000123이 출력됩니다. 숫자가 충분하지 않으면 앞에 0이 추가됩니다. 그것. 물론 이 장의 코드를 기반으로 추가하려는 번호를 변경할 수도 있습니다.

여기에는 숫자에 0을 추가하는 JS 코드를 구현하는 세 가지 방법이 제공됩니다.

방법 1: 반복적으로 구현

function PrefixInteger(num, length) {
  for(var len = (num + "").length; len < length; len = num.length) {
   num = "0" + num;
   }
  return num;
}

방법 2: 십진수로 변환

function PrefixInteger(num, length) {
 var decimal = num / Math.pow(10, length);
  //toFixed指定保留几位小数
  decimal = decimal.toFixed(length) + "";
  return decimal.substr(decimal.indexOf(".")+1);
}

방법 3: 자세히 효율적

function PrefixInteger(num, length) {
 return (Array(length).join(&#39;0&#39;) + num).slice(-length);  
}

테스트:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>JavaScript 数字前补“0”</title>
<body>
<script>
 //迭代方式实现
 function padding1(num, length) {
  for(var len = (num + "").length; len < length; len = num.length) {
   num = "0" + num;
  }
  return num;
 }
//转为小数
 function padding2(num, length) {
  var decimal = num / Math.pow(10, length);
  //toFixed指定保留几位小数
  decimal = decimal.toFixed(length) + "";
  return decimal.substr(decimal.indexOf(".")+1);
 }
 //填充截取法
 function padding3(num, length) {
  //这里用slice和substr均可
  return (Array(length).join("0") + num).slice(-length);
 }

 function test(num, length) {
  document.write(padding1(num, length));
  document.write("<br>");
  document.write(padding2(num, length));
  document.write("<br>");
  document.write(padding3(num, length));
 }
 test(123, 10);
</script>
</body>
</html>

결과:

0000000123  
0000000123  
0000000123

위 내용은 JS에서 숫자를 완성하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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