如何用JavaScript/JQuery生成类PHP uniqid的13位唯一ID?
原生JavaScript实现与PHP uniqid()逻辑一致的13位ID
PHP的uniqid()默认逻辑是基于当前系统时间的微秒级时间戳,转换为十六进制字符串后返回(不带前缀时就是13位)。用原生JavaScript可以完全复刻这个逻辑,不需要jQuery,实现代码如下:
function uniqid() { // 获取当前时间的微秒数(毫秒时间戳 × 1000) const microTimestamp = Date.now() * 1000; // 转换为十六进制字符串并转为小写,最终得到13位结果 return microTimestamp.toString(16).toLowerCase(); }
说明:
- 这个函数生成的ID和PHP默认
uniqid()的格式、长度完全一致,都是13位十六进制字符串(比如63afe4f2903a2)。 - 和PHP的实现一样,它的唯一性依赖系统时间的精度,无法100%保证绝对唯一,但场景匹配度和PHP版本完全一致。
内容的提问来源于stack exchange,提问作者provance
相关产品推荐
相关产品推荐

