欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

JS實現(xiàn)隨機生成字符串(可指定長度)的示例代碼

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

1.定義隨機截取字符串

const _charStr = 'abacdefghjklmnopqrstuvwxyzABCDEFGHJKLMNOPQRSTUVWXYZ0123456789';

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

/**
 * 隨機生成索引
 * @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.定義隨機生成字符串函數(shù)

/**
 * 隨機生成字符串
 * @param len 指定生成字符串長度
 */
function getRandomString(len){
    let min = 0, max = _charStr.length-1, _str = '';
    //判斷是否指定長度,否則默認(rèn)長度為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)用

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

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

具體如下:

/**
 * 隨機生成字符串
 * @param len 指定生成字符串長度
 */
function getRandomString(len){
    let _charStr = 'abacdefghjklmnopqrstuvwxyzABCDEFGHJKLMNOPQRSTUVWXYZ0123456789',
        min = 0, 
        max = _charStr.length-1, 
        _str = '';                    //定義隨機字符串 變量
    //判斷是否指定長度,否則默認(rèn)長度為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實現(xiàn)隨機生成字符串(可指定長度)的示例代碼的文章就介紹到這了,更多相關(guān)JS 隨機生成字符串內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

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

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

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

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

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

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

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

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

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

    JavaScript中定義對象原型的兩種使用方法

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

    JS判斷空對象的幾個方法大盤點

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

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

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

    Webpack完整打包流程深入分析

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

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

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

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

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

最新評論