node NPM库string-random生成随机字符串学习使用

 更新时间:2023年07月24日 11:04:40   作者:脉冲云_梁兴臣  
这篇文章主要为大家介绍了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'); // 1001001001100101

random(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的资料请关注脚本之家其它相关文章!

相关文章

  • 浅析node Async异步处理模块用例分析及常用方法介绍

    浅析node Async异步处理模块用例分析及常用方法介绍

    这篇文章主要介绍了浅析node Async异步处理模块用例分析及常用方法介绍,需要的朋友可以参考下
    2017-11-11
  • Nodejs回调加超时限制两种实现方法

    Nodejs回调加超时限制两种实现方法

    这篇文章主要介绍了Nodejs回调加超时限制两种实现方法的相关资料,需要的朋友可以参考下
    2017-06-06
  • 在 macOS 上使用 Homebrew 安装 Node.js 的完整指南(最新推荐)

    在 macOS 上使用 Homebrew 安装 Node.js&nbs

    本文介绍了使用Homebrew在macOS上安装、验证、升级、切换和卸载Node.js的方法,包括安装最新稳定版、安装特定版本、配置环境变量、使用n或nvm管理多个版本等内容,感兴趣的朋友跟随小编一起看看吧
    2026-04-04
  • Node.js视频流应用创建之后端的全过程

    Node.js视频流应用创建之后端的全过程

    这篇文章主要给大家介绍了关于创建Node.js视频流应用之后端的相关资料,文中通过实例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2022-03-03
  • 深入解析Nodejs中的大文件读写

    深入解析Nodejs中的大文件读写

    这篇文章主要介绍了深入解析Nodejs中的大文件读写,文章围绕主题展开详细的内容介绍,具有一定的参考价值,需要的小伙伴可以参考一下
    2022-09-09
  • Node.js:模块查找,引用及缓存机制详解

    Node.js:模块查找,引用及缓存机制详解

    Node.js是一个基于Chrome V8引擎的JavaScript运行环境,它的模块查找、引用和缓存机制是其重要的特性之一。本文将介绍Node.js的模块查找、引用和缓存机制,以及如何利用这些机制来提高应用程序的性能和可维护性。
    2023-03-03
  • npm安装yolo-js失败切换至淘宝镜像源的方法

    npm安装yolo-js失败切换至淘宝镜像源的方法

    使用常规的npm安装方式有可能安装很慢或者安装失败,所以淘宝就帮我们把一些包同步到了国内服务器,所以使用淘宝镜像安装速度会很快,这篇文章主要介绍了npm安装yolo-js失败切换至淘宝镜像源的相关资料,需要的朋友可以参考下
    2026-03-03
  • 详解nodejs异步I/O和事件循环

    详解nodejs异步I/O和事件循环

    本篇文章主要介绍了nodejs异步I/O和事件循环,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-06-06
  • Node.js 与并发模型的详细介绍

    Node.js 与并发模型的详细介绍

    这篇文章主要介绍了Node.js 与并发模型的详细介绍,Node.js 现在已成为构建高并发网络应用服务工具箱中的一员,文章围绕主题展开详细的内容介绍,需要的朋友可以参考一下
    2022-07-07
  • Node.js 去掉种子(torrent)文件里的邪恶信息

    Node.js 去掉种子(torrent)文件里的邪恶信息

    torrent文件,又被称为种子,原来只是用于记录 bt下载当中所需信息的一种文件。但是随着互联网的极大发展,一些人士将一些邪恶的信息注入到了小小的 torrent文件当中,种子从此变成了邪恶的代名词。
    2015-03-03

最新评论