node?NPM庫(kù)string-random生成隨機(jī)字符串學(xué)習(xí)使用
NPM酷庫(kù)
了解一個(gè)流行NPM庫(kù)。
昨天,我們了解了如何使用uuid庫(kù)快速生成UUID,UUID適用于分布式應(yīng)用中ID的生成,因?yàn)閁UID足夠長(zhǎng),所以碰撞幾率非常低。
此外,我們?cè)诤芏鄷r(shí)候不需要生成像UUID那么長(zhǎng)的字符串,而是需要能夠快速生成一個(gè)隨機(jī)的復(fù)雜字符串,可能同時(shí)包含大小寫(xiě)字母、數(shù)字、特殊符號(hào)等。
string-random
JS Core只提供了Math.random()
用于生成隨機(jī)數(shù)字,但是并未提供生成字符串的函數(shù),要自己寫(xiě)生成隨機(jī)字符串邏輯需要費(fèi)一番周折。string-random庫(kù)專門用于快速生成隨機(jī)字符串,并且可以根據(jù)需求制定字符串長(zhǎng)度以及包含的字符。
const stringRandom = require('string-random'); // 生成長(zhǎng)度為8,包含大小寫(xiě)字母和數(shù)字的隨機(jī)字符串 random(); // oSjAbc02 // 生成長(zhǎng)度為16,包含大小寫(xiě)字母和數(shù)字的隨機(jī)字符串 random(16); // d9oq0A3vooaDod8X // 包含大小寫(xiě)字母的隨機(jī)字符串(不包含數(shù)字) random(16, {numbers: false}); // AgfPTKheCgMvwNqX // 包含數(shù)字的隨機(jī)字符串(不包含字母) random(16, {letters: false}); // 0889014544916637 // 包含制定字母和數(shù)字的隨機(jī)字符串 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)
函數(shù)的第一個(gè)參數(shù)length為要生成的字符串長(zhǎng)度,第二個(gè)參數(shù)是選項(xiàng):
- options 為true,生成包含字母、數(shù)字和特殊字符的字符串
- options 為字符串,從options字符串中提供的字符生成隨機(jī)結(jié)果
- options 為對(duì)象
options 對(duì)象
options.letters
- true (默認(rèn)) 允許大小寫(xiě)字母
- false 不允許大小寫(xiě)字母
- string 從提供的字符生成隨機(jī)結(jié)果
options.numbers
- true (默認(rèn)) 允許數(shù)字
- false 不允許數(shù)字
- string 從提供的字符生成隨機(jī)結(jié)果
options.specials
- true 允許特殊字符
- false (默認(rèn)) 不允許特殊字符
- string 從提供的字符生成隨機(jī)結(jié)果
參考資料
https://github.com/maichong/s...
以上就是node NPM庫(kù)string-random生成隨機(jī)字符串學(xué)習(xí)使用的詳細(xì)內(nèi)容,更多關(guān)于node NPM庫(kù)string random的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
nodejs子進(jìn)程child_process和cluster模塊深入解析
本文從node的單線程單進(jìn)程的理解觸發(fā),介紹了child_process模塊和cluster模塊,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-09-09nodejs實(shí)現(xiàn)OAuth2.0授權(quán)服務(wù)認(rèn)證
本篇文章主要介紹了nodejs實(shí)現(xiàn)OAuth2.0授權(quán)服務(wù)認(rèn)證,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-12-12windows使用nvm對(duì)node進(jìn)行版本管理切換的完整步驟
這篇文章主要介紹了windows使用nvm對(duì)node進(jìn)行版本管理切換的完整步驟,在使用之前各位務(wù)必卸載掉自己安裝過(guò)的nvm或者node版本包括環(huán)境變量之類的,要保證自己的電腦完全沒(méi)有node環(huán)境,需要的朋友可以參考下2024-03-033分鐘快速搭建nodejs本地服務(wù)器方法運(yùn)行測(cè)試html/js
本篇文章主要介紹了3分鐘快速搭建nodejs本地服務(wù)器方法運(yùn)行測(cè)試html/js,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下。2017-04-04