ホームページ >ウェブフロントエンド >jsチュートリアル >jsで数値を補完する方法
JS の数値を補完する方法: 1. 反復を通じて; 2. "num/Math.pow(10, length);" メソッドを通じて; 3. "(Array(length).join ('0) ') num).slice(-length);」が実装されています。
たとえば、出力する数値の長さを 10 と仮定して固定したいとします。数値が 123 の場合、0000000123 となります。桁数が足りない場合は、桁数の前に0を追加して出力します。もちろん、この章のコードに基づいて追加する数値を変更することもできます。
JS コードを使用して数値に 0 を加算する操作を実装する 3 つの異なる方法を次に示します。
方法 1: 反復実装
function PrefixInteger(num, length) { for(var len = (num + "").length; len < length; len = num.length) { num = "0" + num; } return num; }
方法 2: 10 進数に変換
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('0') + 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 中国語 Web サイトの他の関連記事を参照してください。