国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

NPM酷庫:string-random,生成隨機(jī)字符串

weakish / 1847人閱讀

摘要:只提供了用于生成隨機(jī)數(shù)字,但是并未提供生成字符串的函數(shù),要自己寫生成隨機(jī)字符串邏輯需要費(fèi)一番周折。庫專門用于快速生成隨機(jī)字符串,并且可以根據(jù)需求制定字符串長度以及包含的字符。

NPM酷庫,每天兩分鐘,了解一個流行NPM庫。

昨天,我們了解了如何使用uuid庫快速生成UUID,UUID適用于分布式應(yīng)用中ID的生成,因?yàn)閁UID足夠長,所以碰撞幾率非常低。

此外,我們在很多時候不需要生成像UUID那么長的字符串,而是需要能夠快速生成一個隨機(jī)的復(fù)雜字符串,可能同時包含大小寫字母、數(shù)字、特殊符號等。

string-random

JS Core只提供了Math.random() 用于生成隨機(jī)數(shù)字,但是并未提供生成字符串的函數(shù),要自己寫生成隨機(jī)字符串邏輯需要費(fèi)一番周折。string-random庫專門用于快速生成隨機(jī)字符串,并且可以根據(jù)需求制定字符串長度以及包含的字符。

const stringRandom = require("string-random");

// 生成長度為8,包含大小寫字母和數(shù)字的隨機(jī)字符串
random(); // oSjAbc02

// 生成長度為16,包含大小寫字母和數(shù)字的隨機(jī)字符串
random(16); // d9oq0A3vooaDod8X

// 包含大小寫字母的隨機(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ù)的第一個參數(shù)length為要生成的字符串長度,第二個參數(shù)是選項(xiàng):

options 為true,生成包含字母、數(shù)字和特殊字符的字符串

options 為字符串,從options字符串中提供的字符生成隨機(jī)結(jié)果

options 為對象

options 對象:

options.letters

true (默認(rèn)) 允許大小寫字母

false 不允許大小寫字母

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...

歡迎關(guān)注公眾號:梁興臣

每天了解一個NPM庫,一年后成為Node.js高手

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/92584.html

相關(guān)文章

  • NPM酷庫:number-random,生成隨機(jī)數(shù)字

    摘要:庫就可以方便地生成指定范圍的隨機(jī)數(shù)字,并且支持指定生成整數(shù)或是小數(shù)。 NPM酷庫,每天兩分鐘,了解一個流行NPM庫。 昨天,我們了解到 string-random 庫可以用來快速生成指定格式的隨機(jī)字符串,今天我們繼續(xù)學(xué)習(xí)如何生成隨機(jī)的數(shù)字。 其實(shí)只需要 Math.random()就可以生成一個隨機(jī)數(shù)字,但是這個數(shù)字大小是0~1,如果我們需要生成一個指定范圍的隨機(jī)數(shù)字,那么就需要進(jìn)一步的...

    wind5o 評論0 收藏0
  • NPM酷庫:uuid,生成隨機(jī)ID

    摘要:酷庫,每天兩分鐘,了解一個流行庫。我們直接提供的生成器函數(shù),就可以生成一串,由于足夠長,碰撞幾率非常低,所以可以廣泛運(yùn)用在分布式環(huán)境中的各個子系統(tǒng)。 NPM酷庫,每天兩分鐘,了解一個流行NPM庫。 在中心化應(yīng)用中,數(shù)據(jù)記錄的ID往往是數(shù)據(jù)庫生成的自增ID,但是在分布式應(yīng)用中,就會存在一些問題: 保存數(shù)據(jù)之前就需要給數(shù)據(jù)標(biāo)識ID 數(shù)據(jù)規(guī)模超級大,中央數(shù)據(jù)庫無法滿足性能需求 UUID ...

    Michael_Ding 評論0 收藏0
  • NPM酷庫042:ajv,JSON 模式驗(yàn)證

    摘要:酷庫,每天兩分鐘,了解一個流行庫。比如需要滿足那些屬性,每個屬性都是什么類型的,這些條件稱之為數(shù)據(jù)模式驗(yàn)證。在對數(shù)據(jù)的模式驗(yàn)證領(lǐng)域有專門的標(biāo)準(zhǔn),叫做。就是按照標(biāo)準(zhǔn)聲明一個模式對象,然后使用模式驗(yàn)證工具去驗(yàn)證目標(biāo)數(shù)據(jù)。 NPM酷庫,每天兩分鐘,了解一個流行NPM庫。· 在NPM酷庫041中,我們學(xué)習(xí)了如何用validator庫來驗(yàn)證字符串是否是Email、URL等,在開發(fā)中,除了字符串,...

    lavnFan 評論0 收藏0
  • NPM酷庫050:xmlbuilder,創(chuàng)建XML文件

    摘要:酷庫,每天兩分鐘,了解一個流行庫。在前幾期酷庫中,我們介紹了操作等數(shù)據(jù)格式文件,在外部系統(tǒng)接口中,我們還會經(jīng)常遇到格式的接口協(xié)議。本期,我們先來了解,用來創(chuàng)建格式文檔。 NPM酷庫,每天兩分鐘,了解一個流行NPM庫。· 在前幾期NPM酷庫中,我們介紹了Node.js操作JSON5、YAML、CSON、CSV等數(shù)據(jù)格式文件,在外部系統(tǒng)接口中,我們還會經(jīng)常遇到XML格式的接口協(xié)議。從本期開...

    baukh789 評論0 收藏0
  • NPM酷庫050:xmlbuilder,創(chuàng)建XML文件

    摘要:酷庫,每天兩分鐘,了解一個流行庫。在前幾期酷庫中,我們介紹了操作等數(shù)據(jù)格式文件,在外部系統(tǒng)接口中,我們還會經(jīng)常遇到格式的接口協(xié)議。本期,我們先來了解,用來創(chuàng)建格式文檔。 NPM酷庫,每天兩分鐘,了解一個流行NPM庫。· 在前幾期NPM酷庫中,我們介紹了Node.js操作JSON5、YAML、CSON、CSV等數(shù)據(jù)格式文件,在外部系統(tǒng)接口中,我們還會經(jīng)常遇到XML格式的接口協(xié)議。從本期開...

    taoszu 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<