node NPM库string-random生成随机字符串学习使用
NPM酷库
了解一个流行NPM库。
昨天,我们了解了如何使用uuid库快速生成UUID,UUID适用于分布式应用中ID的生成,因为UUID足够长,所以碰撞几率非常低。
此外,我们在很多时候不需要生成像UUID那么长的字符串,而是需要能够快速生成一个随机的复杂字符串,可能同时包含大小写字母、数字、特殊符号等。
string-random
JS Core只提供了Math.random() 用于生成随机数字,但是并未提供生成字符串的函数,要自己写生成随机字符串逻辑需要费一番周折。string-random库专门用于快速生成随机字符串,并且可以根据需求制定字符串长度以及包含的字符。
const stringRandom = require('string-random');
// 生成长度为8,包含大小写字母和数字的随机字符串
random(); // oSjAbc02
// 生成长度为16,包含大小写字母和数字的随机字符串
random(16); // d9oq0A3vooaDod8X
// 包含大小写字母的随机字符串(不包含数字)
random(16, {numbers: false}); // AgfPTKheCgMvwNqX
// 包含数字的随机字符串(不包含字母)
random(16, {letters: false}); // 0889014544916637
// 包含制定字母和数字的随机字符串
random(16, {letters: 'ABCDEFG'}); // 055B1627E43GA7D8
// 包含特殊字符
random(16, {specials: true}); // ,o=8l{iay>AOegW[
random(16, true); // SMm,EjETKMldIM/J
// 指定字符
random(16, '01'); // 1001001001100101random(length, options) 函数的第一个参数length为要生成的字符串长度,第二个参数是选项:
- options 为true,生成包含字母、数字和特殊字符的字符串
- options 为字符串,从options字符串中提供的字符生成随机结果
- options 为对象
options 对象
options.letters
- true (默认) 允许大小写字母
- false 不允许大小写字母
- string 从提供的字符生成随机结果
options.numbers
- true (默认) 允许数字
- false 不允许数字
- string 从提供的字符生成随机结果
options.specials
- true 允许特殊字符
- false (默认) 不允许特殊字符
- string 从提供的字符生成随机结果
参考资料
https://github.com/maichong/s...
以上就是node NPM库string-random生成随机字符串学习使用的详细内容,更多关于node NPM库string random的资料请关注脚本之家其它相关文章!
相关文章
nodejs子进程child_process和cluster模块深入解析
本文从node的单线程单进程的理解触发,介绍了child_process模块和cluster模块,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪2023-09-09
windows使用nvm对node进行版本管理切换的完整步骤
这篇文章主要介绍了windows使用nvm对node进行版本管理切换的完整步骤,在使用之前各位务必卸载掉自己安装过的nvm或者node版本包括环境变量之类的,要保证自己的电脑完全没有node环境,需要的朋友可以参考下2024-03-03
3分钟快速搭建nodejs本地服务器方法运行测试html/js
本篇文章主要介绍了3分钟快速搭建nodejs本地服务器方法运行测试html/js,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。2017-04-04


最新评论