亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

JS實(shí)現(xiàn)隨機(jī)生成字符串(可指定長(zhǎng)度)的示例代碼

 更新時(shí)間:2023年08月01日 10:09:06   作者:覺醒法師  
本文主要介紹了JS實(shí)現(xiàn)隨機(jī)生成字符串(可指定長(zhǎng)度)的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

1.定義隨機(jī)截取字符串

const _charStr = 'abacdefghjklmnopqrstuvwxyzABCDEFGHJKLMNOPQRSTUVWXYZ0123456789';

2.定義隨機(jī)生成索引函數(shù)

/**
 * 隨機(jī)生成索引
 * @param min 最小值
 * @param max 最大值
 * @param i 當(dāng)前獲取位置
 */
function RandomIndex(min, max, i){
    let index = Math.floor(Math.random()*(max-min+1)+min),
        numStart = _charStr.length - 10;
    //如果字符串第一位是數(shù)字,則遞歸重新獲取
    if(i==0&&index>=numStart){
        index = RandomIndex(min, max, i);
    }
    //返回最終索引值
    return index;
}

3.定義隨機(jī)生成字符串函數(shù)

/**
 * 隨機(jī)生成字符串
 * @param len 指定生成字符串長(zhǎng)度
 */
function getRandomString(len){
    let min = 0, max = _charStr.length-1, _str = '';
    //判斷是否指定長(zhǎng)度,否則默認(rèn)長(zhǎng)度為15
    len = len || 15;
    //循環(huán)生成字符串
    for(var i = 0, index; i < len; i++){
        index = RandomIndex(min, max, i);
        _str += _charStr[index];
    }
    return _str;
}

4.調(diào)用

//隨機(jī)生成長(zhǎng)度為20的字符串
getRandomString(20);
//輸出結(jié)果
//dJQ6UoEaEpXXAEBRQDl9

5.結(jié)合上述寫法,可以將其整合到一個(gè)函數(shù)中,來簡(jiǎn)化流程

具體如下:

/**
 * 隨機(jī)生成字符串
 * @param len 指定生成字符串長(zhǎng)度
 */
function getRandomString(len){
    let _charStr = 'abacdefghjklmnopqrstuvwxyzABCDEFGHJKLMNOPQRSTUVWXYZ0123456789',
        min = 0, 
        max = _charStr.length-1, 
        _str = '';                    //定義隨機(jī)字符串 變量
    //判斷是否指定長(zhǎng)度,否則默認(rèn)長(zhǎng)度為15
    len = len || 15;
    //循環(huán)生成字符串
    for(var i = 0, index; i < len; i++){
        index = (function(randomIndexFunc, i){         
                    return randomIndexFunc(min, max, i, randomIndexFunc);
                })(function(min, max, i, _self){
                    let indexTemp = Math.floor(Math.random()*(max-min+1)+min),
                        numStart = _charStr.length - 10;
                    if(i==0&&indexTemp >=numStart){
                        indexTemp = _self(min, max, i, _self);
                    }
                    return indexTemp ;
                }, i);
        _str += _charStr[index];
    }
    return _str;
}
//調(diào)用:
getRandomString(30);
//結(jié)果:
//CvoNFNrOa6NECo3bFV8suMokE780NG

到此這篇關(guān)于JS實(shí)現(xiàn)隨機(jī)生成字符串(可指定長(zhǎng)度)的示例代碼的文章就介紹到這了,更多相關(guān)JS 隨機(jī)生成字符串內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • js(jquery)實(shí)現(xiàn)無刷新跳轉(zhuǎn)404頁(yè)面不存在效果

    js(jquery)實(shí)現(xiàn)無刷新跳轉(zhuǎn)404頁(yè)面不存在效果

    有時(shí)候我們希望臨時(shí)讓某個(gè)分類或者多個(gè)文章不能正常訪問,手動(dòng)給html文件改名?或者改后臺(tái)改程序?太麻煩了。用本文的js代碼很容易實(shí)現(xiàn),而且使用得當(dāng)很隱蔽。這篇文章主要介紹了js(jquery)實(shí)現(xiàn)無刷新跳轉(zhuǎn)404頁(yè)面不存在效果,需要的朋友可以參考下
    2023-04-04
  • JavaScript實(shí)現(xiàn)in-place思想的快速排序方法

    JavaScript實(shí)現(xiàn)in-place思想的快速排序方法

    這篇文章主要介紹了JavaScript實(shí)現(xiàn)in-place思想的快速排序方法的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下
    2016-08-08
  • 利用函數(shù)的惰性載入提高javascript代碼執(zhí)行效率

    利用函數(shù)的惰性載入提高javascript代碼執(zhí)行效率

    在 addEvent 函數(shù)每次調(diào)用的時(shí)候都要走一遍,如果瀏覽器支持其中的一種方法,那么他就會(huì)一直支持了,就沒有必要再進(jìn)行其他分支的檢測(cè)了
    2014-05-05
  • 詳解JavaScript對(duì)象的深淺復(fù)制

    詳解JavaScript對(duì)象的深淺復(fù)制

    從層次上來看,對(duì)象的復(fù)制可以簡(jiǎn)單地分為淺復(fù)制和深復(fù)制,顧名思義,淺復(fù)制是指只復(fù)制一層對(duì)象的屬性,不會(huì)復(fù)制對(duì)象中的對(duì)象的屬性,對(duì)象的深復(fù)制會(huì)復(fù)制對(duì)象中層層嵌套的對(duì)象的屬性。本文是我在復(fù)制對(duì)象方面的一些心得總結(jié),由淺復(fù)制到深復(fù)制,感興趣的朋友一起學(xué)習(xí)吧
    2017-03-03
  • JavaScript中定義對(duì)象原型的兩種使用方法

    JavaScript中定義對(duì)象原型的兩種使用方法

    本文主要對(duì)JavaScript中定義對(duì)象原型的兩種使用方法進(jìn)行介紹,具有很好的參考價(jià)值,下面就跟小編一起來看下吧
    2016-12-12
  • JS判斷空對(duì)象的幾個(gè)方法大盤點(diǎn)

    JS判斷空對(duì)象的幾個(gè)方法大盤點(diǎn)

    在做數(shù)據(jù)交互的時(shí)候,我們經(jīng)常需要判斷數(shù)據(jù)或者對(duì)象是不是為空,避免當(dāng)接口異常時(shí)候前端頁(yè)面崩潰,下面這篇文章主要給大家介紹了關(guān)于JS判斷空對(duì)象的幾個(gè)方法,需要的朋友可以參考下
    2022-02-02
  • Javascript中JSON數(shù)據(jù)分組優(yōu)化實(shí)踐及JS操作JSON總結(jié)

    Javascript中JSON數(shù)據(jù)分組優(yōu)化實(shí)踐及JS操作JSON總結(jié)

    這篇文章主要介紹了Javascript中JSON數(shù)據(jù)分組優(yōu)化實(shí)踐,文中還對(duì)JS操作JSON的要領(lǐng)做了總結(jié),需要的朋友可以參考下
    2017-12-12
  • Webpack完整打包流程深入分析

    Webpack完整打包流程深入分析

    webpack是一種前端資源構(gòu)建工具,一個(gè)靜態(tài)模塊打包器(module bundler),下面這篇文章主要給大家介紹了關(guān)于Webpack完整打包流程的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-12-12
  • javascript+mapbar實(shí)現(xiàn)地圖定位

    javascript+mapbar實(shí)現(xiàn)地圖定位

    地圖定位 圖吧地圖定位 附j(luò)avascript源碼每行都有注釋
    2010-04-04
  • JS動(dòng)態(tài)加載當(dāng)前時(shí)間的方法

    JS動(dòng)態(tài)加載當(dāng)前時(shí)間的方法

    這篇文章主要介紹了JS動(dòng)態(tài)加載當(dāng)前時(shí)間的方法,涉及html的onload方法及javascript操作時(shí)間的技巧,需要的朋友可以參考下
    2015-02-02

最新評(píng)論