JavaScript的ID生成器-Nano ID

简介nanoid是一个小巧、安全、URL友好、唯一的JS字符串ID生成器
// 目前github的star是15.9Kgithub地址:https://github.com/ai/nanoid 
特点

  • 小巧 , 130 bytes (已压缩和 gzipped) 。没有依赖 。Size Limit 控制大小 。
  • 快速 , 它比 UUID 快 60% 。
  • 安全 , 它使用加密的强随机 API , 可以在集群中使用 。
  • 紧凑 , 它使用比 UUID(A-Za-z0-9_-)更大的字母表 。因此 , ID 大小从36个符号减少到21个符号 。
  • 易用 , Nano ID 已被移植到 20种编程语言 。
【JavaScript的ID生成器-Nano ID】 
与 UUID 的比较Nano ID 与 UUID v4 (基于随机) 相当 。它们在 ID 中有相似数量的随机位 (Nano ID 为126 , UUID 为122),因此它们的冲突概率相似::
要想有十亿分之一的重复机会, 必须产生103万亿个版本4的ID.
Nano ID 和 UUID v4之间有三个主要区别:
  • Nano ID 使用更大的字母表 , 所以类似数量的随机位 被包装在21个符号中 , 而不是36个 。
  • Nano ID 代码比 uuid/v4 包少 4倍: 130字节而不是483字节.
  • 由于内存分配的技巧 , Nano ID 比 UUID 快 60% 。
 
使用教程// 安装npm i nanoid -S// 引入import { nanoid } from 'nanoid'// 简单随机生成nanoid() //=> "V1StGXR8_Z5jdHi6B-myT"// 指定生成长度nanoid(10) //=> "IRFa-VaY2b"// 自定义用于生成id的字符和大小import { customAlphabet } from 'nanoid'const nanoid = customAlphabet('1234567890abcdefg', 10)nanoid() //=> "4f90d13a42" 
是不是非常的强大好用
觉得效果不错的请帮忙加个关注点个赞 , 经常分享前端实用开发技巧




    推荐阅读