gpt4 book ai didi

javascript - 我想生成唯一 ID

转载 作者:行者123 更新时间:2023-12-02 02:15:09 31 4
gpt4 key购买 nike

我想在 JavaScript 中生成唯一 ID。我已经尝试过 uuid npm 包,它很好,但它不是我想要的。

例如,我从 uuid 包中生成唯一 ID 得到的结果是

9b1deb4d-3b7d-4bad-9bdd-2b0d7b3dcb6d

有什么办法可以按照我的意愿制作特定的格式。

例如我希望我的 ID 看起来像这样

XZ5678

在此示例中,格式是两个大写字母和 4 个数字。

就是这样,我正在寻找答案并提前谢谢大家。

最佳答案

如果您只想根据该模式生成随机序列,则可以相对轻松地完成。为确保它的唯一性,您需要运行此函数,然后将其与之前生成的 ID 表进行匹配,以确保它尚未被使用。

在下面的示例中,我创建了两个函数,getRandomLetters()getRandomDigits(),它们返回一串数字和字母,传递给函数(每个函数的默认长度为 1)。

然后,我创建了一个名为 generateUniqueID() 的函数,它根据您指定的格式生成一个新 ID。它会检查该 ID 是否已存在于现有 ID 表中。如果是这样,它会进入一个 while 循环,循环直到创建一个新的唯一 ID,然后返回它的值。

const existingIDs = ['AA1111','XY1234'];
const getRandomLetters = (length = 1) => Array(length).fill().map(e => String.fromCharCode(Math.floor(Math.random() * 26) + 65)).join('');
const getRandomDigits = (length = 1) => Array(length).fill().map(e => Math.floor(Math.random() * 10)).join('');
const generateUniqueID = () => {
let id = getRandomLetters(2) + getRandomDigits(4);
while (existingIDs.includes(id)) id = getRandomLetters(2) + getRandomDigits(4);
return id;
};
const newID = generateUniqueID();

console.log(newID);

关于javascript - 我想生成唯一 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67273493/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com