JS——生成随机id

生成随机id

const generateId = () => {
  return 'vxth-' + Math.random().toString(36).substr(2, 9);
};

这个 generateId 函数是一个生成随机 ID 字符串的工具函数。它不接受任何参数,并返回一个新的字符串,该字符串可以作为 DOM 元素的唯一标识符。让我们分解这个函数的步骤:

  1. Math.random():这个方法生成一个介于 0(包含)到 1(不包含)之间的随机浮点数。

  2. .toString(36):将上述随机数转换成一个基数为 36 的字符串。在 JavaScript 中,.toString() 方法可以接受一个可选的整数参数(介于 2 到 36 之间),该参数表示输出的数值基数。当使用 36 作为基数时,结果字符串包含了从 0-9 到 a-z 的全部字符。

  3. .substr(2, 9):这个方法取上一步生成的字符串(第一个字符为 ‘0’,第二个字符通常为 ‘.’,因为是从一个小数开始的),从索引 2 开始提取后面的 9 个字符。这样做就忽略了字符串开头的 “0.” 部分。

  4. vxth-' + ...:最后,这个生成的随机字符串前会加上 ‘vxth-’ 前缀。

综合起来,每次调用 generateId 函数都会返回形如 ‘vxth-asd89fdgb’ 的字符串,其中 ‘asd89fdgb’ 是由 Math.random().toString(36).substr(2, 9) 生成的随机部分。由于 Math.random() 生成的是一个几乎肯定是唯一的随机数,这种方式可以生成一个具有合理唯一性的 ID 字符串,适用于需要临时或独特标识符的场景。
在这里插入图片描述

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值