js 如何在數字前面自動補零,生成序列號、單據號


  //獲取指定位數的序號(如:003)
  var GetSerialNum = function(num,length){
     var serialNum = (Array(length).join(0) + num).slice(-length);
     console.log(serialNum);
     return serialNum;
 }
 
 //獲取指定日期格式的日期
 var getFullDataStr = function (dateformat) {
     var dateStr = "";
     var mydate = new Date();
     var year = mydate.getFullYear();  //console.log(typeof(year));  可輸出值的類型
     var month = (mydate.getMonth() + 1) < 10 ? '0' + (mydate.getMonth() + 1) : (mydate.getMonth() + 1) + '';
     var day = mydate.getDate() < 10 ? '0' + mydate.getDate() : mydate.getDate() + '';
     var hours = mydate.getHours() < 10 ? '0' + mydate.getHours() : mydate.getHours() + '';
     var minutes = mydate.getMinutes() < 10 ? '0' + mydate.getMinutes() : mydate.getMinutes() + '';
     var seconds = mydate.getSeconds() < 10 ? '0' + mydate.getSeconds() : mydate.getSeconds() + '';
     //var minseconds = mydate.getMilliseconds().toString().substring(0,2);
     var minseconds = mydate.getMilliseconds().toString();
     if (dateformat.toLowerCase() == "yyyy") {
         dateStr = year;
     }
     else if (dateformat.toLowerCase() == "yyyymm") {
         dateStr = year + month;
     }
     else if (dateformat.toLowerCase() == "yyyymmdd") {
         dateStr = year + month + day;
     }
     else if (dateformat.toLowerCase() == "yyyymmddhhmmss") {
         dateStr = year + month + day + hours + minutes + seconds;
     }
     else if (dateformat.toLowerCase() == "yymmddhhmmss") {
         dateStr = year.toString().substring(2, 4) + month + day + hours + minutes + seconds;
     }
     else if (dateformat.toLowerCase() == "yyyymmddhhmmssms") {
         dateStr = year + month + day + hours + minutes + seconds + minseconds;
     }
     else if (dateformat.toLowerCase() == "yymmddhhmmssms") {
         dateStr = year.toString().substring(2, 4) + month + day + hours + minutes + seconds + minseconds;;
     }
     else {
         dateStr = year + month + day;
     }
     return dateStr;  
 }
 
 //獲取單據的序列號
 var GetSerialBillNo = function(num,length,format){
     //獲取序號值
    var serialNum = GetSerialNum(num,length);
    //獲取日期字符串
    var serialdate = getFullDataStr("yyyymmdd");
    //拼接對應單號
    var serialBillNo =serialdate+ serialNum;
    console.log(serialBillNo);
    return serialBillNo;
}
<body>
<button onClick="GetSerialNum(5,4)">獲取序號值</button>
<button onClick="GetSerialBillNo(8,6,'yyyymmdd')">獲取單據號</button>
</body>

根據上面輸出的結果

 0005
 000008
20201201000008

 注意:真正調用的時候,自己傳遞函數的參數值,記得把打印去掉

 參考網址:

https://www.cnblogs.com/jokerjason/p/9355768.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM