SOURCE

    /**
    * @description: 生成流水号  "SN" + 20位 字符串
    * @rule 生成规则=> "SN" + 年(4) + 月(2) + 日(2) + 时(2) + 分(2) + 秒(2) + 毫秒(3) + 随机数(3)
    * @return 有返回信息 {string}  流水号 SN20210831174240266091
    */
   function getNowFormatDatePath(date) {
      // 获取当前的年
      var year = date.getFullYear();
      // 获取当前的月份  月份要加一 从0开始计算
      var month = date.getMonth() + 1;
      // 获取当前的日期
      var strDate = date.getDate();
      // 获取当前小时
      var hour = date.getHours();
      // 获取当前分钟
      var minutes = date.getMinutes();
      //获取当前的秒
      var seconds = date.getSeconds();
      //获取当前的毫秒数
      var milliseconds = date.getMilliseconds();
      //随机生成随机数
      // var num = Math.floor(Math.random() * 1000)
      var num = '';
      for (var i = 0; i < 3; i++) num += Math.floor(Math.random() * 10);
      // console.log(num)
      //判断月份是否小于9小于在前面填0
      month = month > 9 ? month : '0' + month;
      //判断日期是否小于9 小于在前面填0
      strDate = strDate > 9 ? strDate : '0' + strDate;
      // 判断时间是否小于9 小于在前面填0
      hour = hour > 9 ? hour : '0' + hour;
      // 判断分钟
      minutes = minutes > 9 ? minutes : '0' + minutes;
      // 判断当前的秒数
      seconds = seconds > 9 ? seconds : '0' + seconds;
      //判断当前的毫秒数
      // milliseconds = milliseconds > 9 ? milliseconds : '0' + milliseconds
      milliseconds =
        milliseconds > 9
          ? milliseconds > 99
            ? milliseconds
            : '0' + milliseconds
          : '00' + milliseconds;
      // 拼接为20位的字符串
      var currentdate =
        'SN' +
        year +
        month +
        strDate +
        hour +
        minutes +
        seconds +
        milliseconds +
        num;
      return currentdate;
    }

console.log(getNowFormatDatePath(new Date()),'--->流水号生成')
console 命令行工具 X clear

                    
>
console