欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

js動(dòng)態(tài)生成唯一id的三種方法

 更新時(shí)間:2023年05月07日 00:34:18   作者:未月廿三  
這篇文章主要介紹了js動(dòng)態(tài)生成唯一id的兩種方法,需要的朋友可以參考下

一. 引入時(shí)間戳,生成可控長度的隨機(jī)數(shù)

隨機(jī)數(shù)長度控制,定義一個(gè)長度變量(length),生成可控長度的隨機(jī)數(shù):

Math.random().toString(36).substr(3,length)

引入時(shí)間戳:

Date.now().toString(36)

合在一起最終辦法:

genID(length){
   return Number(Math.random().toString().substr(3,length) + Date.now()).toString(36);
}

或參考下面的

  <script>
        /**
         * 獲取當(dāng)前時(shí)間戳、生成唯一標(biāo)識(shí)id, 以及常見方法。
         * **/
        // 方法一傳值轉(zhuǎn)換,注意格式
        var date = Date.parse(new Date())
        console.log(date);  // 1656581121000
        // //Date.parse("2022/6/30 10:05") 或者 Date.parse("2022-6-30 10:05")
        var date = Date.parse("2022-6-30 10:05:50")
        //方法二通過原型方法直接獲得當(dāng)前時(shí)間的毫秒值
        var date = new Date().getTime()
        //方法三Date.now()可以獲得當(dāng)前的時(shí)間戳
        var date = Date.now()
        //方法四valueOf()函數(shù)返回時(shí)間戳值
        var data = (new Date()).valueOf()
        //方法五將獲取時(shí)間方法對象轉(zhuǎn)化為一個(gè)number類型的數(shù)值
        var data = Number(new Date())
    </script>

二. JS 生成隨機(jī)

如:07854BB7-6572-496E-918B-81115BCF396E

  getUuid () {
    var s = [];
    var hexDigits = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"
    for (var i = 0; i < 36; i++) {
      s[i] = hexDigits.substr(Math.floor(Math.random() * 0x10), 1)
    }
    s[14] = "4"
    s[19] = hexDigits.substr((s[19] & 0x3) | 0x8, 1)
    s[8] = s[13] = s[18] = s[23] = "-"
    let uuid = s.join("")
    return uuid
  }

三、ID生成器NanoID

2.1-安裝

npm i nanoid

2.2-使用

import {nanoid} from 'nanoid';
let  idA = nanoid() //=> "V1SyGzR8_Z5jdHd8B-myT"
// 也可以指定生成字符串的長度
let  idB = nanoid(10)
 

下面是一些補(bǔ)充

在 JavaScript 中,可以通過使用 Date 對象的 getTime 方法來生成一個(gè)毫秒級(jí)別的唯一 ID。具體示例如下:

let uniqueId = new Date().getTime();
console.log(uniqueId); // 輸出的結(jié)果類似于 1633067982824

如果需要生成更長的 ID,可以將該 ID 轉(zhuǎn)換為字符串,并在后面添上一個(gè)隨機(jī)數(shù)。示例如下:

let uniqueId = String(new Date().getTime()) + String(Math.floor(Math.random() * 1000));
console.log(uniqueId); // 輸出的結(jié)果類似于 1633067982824432

上述代碼將自動(dòng)生成一個(gè)長度為 16 位的唯一 ID,其中前 13 位是時(shí)間戳,后 3 位是隨機(jī)數(shù)。

到此這篇關(guān)于js動(dòng)態(tài)生成唯一id的兩種方法的文章就介紹到這了,更多相關(guān)js動(dòng)態(tài)生成唯一id內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論