node.js - 如何在 nodejs 中生成唯一的数字短 ID?

标签 node.js database algorithm

如何在nodejs中生成唯一的数字短ID?

我需要为我的每笔交易提供这些数字短 ID 之一

可以有数百万笔交易

最佳答案

我写了一个名为 custom-id 的 npm 包来解决这个问题。您可以根据需要定制您的自定义 ID。如果你想要它的数字,你可以这样做。它也可以生成字母数字值。您担心可读性。这就是编写插件的原因。它是为人类和机器而构建的。我们在随机生成的 ID 中使用熟悉的字母(来自名字和电子邮件)。人们每次、每天、每时每刻都可以很容易地认出那些熟悉的字母。您可以使用 uuid 或 nanoid 随机生成 ID,但这些不是为人类生成的。这些是给机器的。但是这个图书馆是为他们俩准备的。

你可以从这里下载这个包 - custom-id

npm i custom-id

您可以通过提供一个空对象作为参数来立即生成一个 ID。

var customId = require("custom-id");

customId({}); // Voila... A random 8 character string will be generated automatically

自定义 ID 将以这种格式生成 -

✌✌** 2 个数字 + 2 个字母 + 2 个数字 + 2 个字母 = 8 个字符 ** ✌✌

所有这些数字和字母将随机生成。我们使用密码学来生成 ID(如果可用)。

enter image description here

您可以从这里阅读详细文档 - NPM

但在您的情况下,您只需要一个人类可读、直观且唯一的数字。代码将像 -

var customId = require("custom-id")
customId({
  name: "123456",
  email: "78910"
});
// Random Result - "20111070" or "11435189" or "64656618"

你应该看看那个数字。这只是一个数字,但很容易记住。这个随机 ID 生成器不会创建像 24359625 这样的数字!由于其独特但非常简单的算法。这就是为什么我建议你使用它。

关于node.js - 如何在 nodejs 中生成唯一的数字短 ID?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54338808/

相关文章:

javascript - 广播到房间的套接字 IO 无法正常工作

node.js - Sequelize 关联: same field with multiple table is possible?

database - Data Mapper 可以调用另一个吗?并继承?

node.js - MongoDB - 如何通过 ID 查找文档并查找与 ID 数组匹配的文档

c++ - C++数据结构的时间范围查询

node.js - 在 NodeJS 中处理服务器端 Google 域身份验证

javascript - ExpressJS - 带有路由分离的 Socket.IO

.net - 默认的 ADO.NET 隔离级别是什么?

javascript - 如何为树中每个深度嵌套的节点管理状态 'collapsed'

javascript - 在选择菜单中建议选项以获得更好的用户界面