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

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

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

1.定義隨機截取字符串

const _charStr = 'abacdefghjklmnopqrstuvwxyzABCDEFGHJKLMNOPQRSTUVWXYZ0123456789';

2.定義隨機生成索引函數

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

3.定義隨機生成字符串函數

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

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

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

具體如下:

/**
 * 隨機生成字符串
 * @param len 指定生成字符串長度
 */
function getRandomString(len){
    let _charStr = 'abacdefghjklmnopqrstuvwxyzABCDEFGHJKLMNOPQRSTUVWXYZ0123456789',
        min = 0, 
        max = _charStr.length-1, 
        _str = '';                    //定義隨機字符串 變量
    //判斷是否指定長度,否則默認長度為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;
}
//調用:
getRandomString(30);
//結果:
//CvoNFNrOa6NECo3bFV8suMokE780NG

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

相關文章

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

    js(jquery)實現無刷新跳轉404頁面不存在效果

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

    JavaScript實現in-place思想的快速排序方法

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

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

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

    詳解JavaScript對象的深淺復制

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

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

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

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

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

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

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

    Webpack完整打包流程深入分析

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

    javascript+mapbar實現地圖定位

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

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

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

最新評論