博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
nodejs利用string-random生成指定的随机字符串
阅读量:4332 次
发布时间:2019-06-06

本文共 1666 字,大约阅读时间需要 5 分钟。

nodejs提供的Math.random() 用于生成随机数字,但是并未提供生成字符串的函数,要自己写生成随机字符串逻辑比较麻烦。string-random库专门用于快速生成随机字符串,并且可以根据需求制定字符串长度以及包含的字符。下面进行相关用户的简单介绍。

1.简述

  1)random(length, options) 函数的第一个参数length为要生成的字符串长度,第二个参数是选项:

    - options 为true,生成包含字母、数字和特殊字符的字符串

    - options 为字符串,从options字符串中提供的字符生成随机结果
    - options 为对象
  2)options 对象:

    - options.letters

    - true (默认) 允许大小写字母

    - false 不允许大小写字母
    - string 从提供的字符生成随机结果

  3)options.numbers

    - true (默认) 允许数字

    - false 不允许数字
    - string 从提供的字符生成随机结果

  4)options.specials

    - true 允许特殊字符

    - false (默认) 不允许特殊字符
    - string 从提供的字符生成随机结果

2. 用法demo:

1 const stringRandom = require('string-random'); 2  3  4 // 默认生成长度为8的字符串,包含大小写字母和数字的随机字符串 5 console.log(stringRandom()); // oSjAbc02 6  7 // 指定生成长度为16,包含大小写字母和数字的随机字符串 8 console.log(stringRandom(16)); // d9oq0A3vooaDod8X 9 10 // 指定生成长度为16,仅包含指定字符的字符串11 console.log(stringRandom(16, '01')); // 100100100110010112 13 // 指定生成长度为16,包含大小写字母的随机字符串(不包含数字)14 console.log(stringRandom(16, { numbers: false }));  // AgfPTKheCgMvwNqX15 16 // 指定生成长度为16,包含大小写字母的随机字符串(包含数字) 同console.log(stringRandom(16));17 console.log(stringRandom(16, { numbers: true }));  // r48ZGVa7FsioSbse18 19 // 包含数字的随机字符串(不包含字母) 默认是 true20 console.log(stringRandom(16, { letters: false }));  // 088901454491663721 22 // 包含制定字母和数字的随机字符串23 console.log(stringRandom(16, { letters: 'ABCDEFG' }));  // 055B1627E43GA7D824 25 // 包含特殊字符 默认是false26 console.log(stringRandom(16, { specials: true })); // ,o=8l{iay>AOegW[ 27 console.log(stringRandom(16, true));             // SMm,EjETKMldIM/J28 //包含指定特殊字符29 console.log(stringRandom(16, { specials: "-" }));

 

转载于:https://www.cnblogs.com/songqingbo/articles/10951569.html

你可能感兴趣的文章
解决 nginx 返回数据不完整的方法
查看>>
Apache 配置多个HTTPS站点
查看>>
Python学习笔记_1_基础_7:函数
查看>>
CSS代码规范
查看>>
窗口子类化
查看>>
Angular material mat-icon 资源参考_Hardware
查看>>
Spring cron表达式
查看>>
算法第四章实践报告
查看>>
牛客练习赛29 B
查看>>
数字校园项目-学生失联预警系统(三)----数据库设计
查看>>
C# 6.0部分新特性
查看>>
Docker命令之 exec
查看>>
centos yum源配置 与yum配置文件
查看>>
12模块-geolocation【管理设备位置信息用于定位】
查看>>
关于整理和工作小结
查看>>
Python字符串格式化
查看>>
恐怖的奴隶主(bob)
查看>>
大龄码农那些事——也谈996.ICU
查看>>
二叉树
查看>>
Unity 游戏框架搭建 2018 (二) 单例的模板与最佳实践
查看>>