微信小程式 - 隨機生成訂單號(JavaScript)

2020-10-02 12:00:38

前言

如題,隨機生成訂單號是很常見的需求,如下圖所示:
在這裡插入圖片描述

第一種

可自己拼接其他字母。

時間戳 + 6位亂數的訂單號。

function orderCode()
{
   	// 存放訂單號
    let orderCode = '';
    
    // 6位亂數(加在時間戳後面)
    for (var i = 0; i < 6; i++)
    {
      orderCode += Math.floor(Math.random() * 10);
    }

    // 時間戳(用來生成訂單號)
    orderCode = 'D' + new Date().getTime() + orderCode;
	
	// 列印
    console.log(orderCode)// D1601545805958923658
}

第二種

日期 + 6位亂數的訂單號。

function setTimeDateFmt(s) {  // 個位數補齊十位數
  return s < 10 ? '0' + s : s;
}

function randomNumber() {
  const now = new Date()
  let month = now.getMonth() + 1
  let day = now.getDate()
  let hour = now.getHours()
  let minutes = now.getMinutes()
  let seconds = now.getSeconds()
  month = setTimeDateFmt(month)
  day = setTimeDateFmt(day)
  hour = setTimeDateFmt(hour)
  minutes = setTimeDateFmt(minutes)
  seconds = setTimeDateFmt(seconds)
  let orderCode = now.getFullYear().toString() + month.toString() + day + hour + minutes + seconds + (Math.round(Math.random() * 1000000)).toString();
  console.log(orderCode)
  return orderCode;
}

結果:

20190909103109582536