• nodejs利用string-random生成指定的随机字符串


    nodejs利用string-random生成指定的随机字符串

     

    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')); // 1001001001100101
    12 
    13 // 指定生成长度为16,包含大小写字母的随机字符串(不包含数字)
    14 console.log(stringRandom(16, { numbers: false }));  // AgfPTKheCgMvwNqX
    15 
    16 // 指定生成长度为16,包含大小写字母的随机字符串(包含数字) 同console.log(stringRandom(16));
    17 console.log(stringRandom(16, { numbers: true }));  // r48ZGVa7FsioSbse
    18 
    19 // 包含数字的随机字符串(不包含字母) 默认是 true
    20 console.log(stringRandom(16, { letters: false }));  // 0889014544916637
    21 
    22 // 包含制定字母和数字的随机字符串
    23 console.log(stringRandom(16, { letters: 'ABCDEFG' }));  // 055B1627E43GA7D8
    24 
    25 // 包含特殊字符 默认是false
    26 console.log(stringRandom(16, { specials: true })); // ,o=8l{iay>AOegW[ 
    27 console.log(stringRandom(16, true));             // SMm,EjETKMldIM/J
    28 //包含指定特殊字符
    29 console.log(stringRandom(16, { specials: "-" }));
    复制代码
    @南非波波 github:https://github.com/swht
     
    标签: node
    0
    0
     
     
     
     
    posted @ 2019-05-30 19:28  南非波波  阅读(1142)  评论(0编辑  收藏
  • 相关阅读:
    求最大公约数伪代码
    XOR加密
    20201225张晓平第五周学习
    pep9课下作业 张晓平
    20201225 张晓平《信息安全专业导论》第四周学习总结
    寻找黑客偶像 20201225张晓平
    《信息安全专业导论》第九周学习总结
    《信息安全专业导论》第八周学习总结
    《信息安全专业导论》第七周学习总结
    《信息安全专业导论》第6周学习总结
  • 原文地址:https://www.cnblogs.com/du-jun/p/12166855.html
Copyright © 2020-2023  润新知