Rumah >hujung hadapan web >tutorial js >Perkongsian 4 fungsi untuk menjana nombor rawak yang dilaksanakan dalam pengetahuan JS_Basic

Perkongsian 4 fungsi untuk menjana nombor rawak yang dilaksanakan dalam pengetahuan JS_Basic

WBOY
WBOYasal
2016-05-16 16:14:341157semak imbas

Kaedah pertama

Salin kod Kod adalah seperti berikut:

/*
*@desc: Hasilkan rentetan rawak
*@remark: Kaedah toString boleh menerima pangkalan sebagai parameter, dan pangkalan dihadkan daripada 2 hingga 36. Jika tidak dinyatakan, asas lalai ialah perpuluhan
*/
function generateRandomAlphaNum(len) {
var rdmString = "";
untuk (; rdmString.length < len; rdmString = Math.random().toString(36).substr(2));
Kembalikan rdmString.substr(0, len);
}

Kaedah kedua

Salin kod Kod adalah seperti berikut:

//JS menjana fungsi GUID, serupa dengan NewID() dalam .net; fungsi S4() {
Kembalikan (((1 Math.random()) * 0x10000) | 0).toString(16).substring(1);
}
fungsi NewGuid() {

Kembali (S4() S4() "-" S4() "-" S4() "-" S4() "-" S4() S4() S4());
}

Kaedah ketiga

Salin kod Kod adalah seperti berikut:
//JS menjana fungsi GUID, serupa dengan NewID() dalam .net; fungsi newGuid() {
var guid = "";
untuk (var i = 1; i <= 32; i ) {
          var n = Math.floor(Math.random() * 16.0).toString(16);
        panduan = n;
Jika ((i == 8) || (i == 12) || (i == 16) || (i == 20))
            panduan = "-";
}
Panduan pulang;
}


Kaedah keempat

/*
*@desc: Hasilkan rentetan rawak
*@demo:console.log(ranStr());
*/
;(fungsi(){
//Nombor 0-9, huruf besar, huruf kecil, pengekodan ASCII atau UNICODE (perpuluhan), 62 kesemuanya
var charCodeIndex = [[48,57],[65,90],[97,122]];
var charCodeArr = [];

fungsi getBetweenRound(min,maks){           return Math.floor(min Math.random()*(max-min));

};

fungsi getCharCode(){

untuk(var i=0,len=3;i           var thisArr = charCodeIndex[i];
for(var j=thisArr[0],thisLen=thisArr[1];j<=thisLen;j ){
                  charCodeArr.push(j);
            }
}
}

fungsi ranStr(slen){

slen = slen || 20;

charCodeArr.length<62 && getCharCode();

var res = [];

untuk(var i=0;i             indeks var = getBetweenRound(0,61);
              res.push(String.fromCharCode(charCodeArr[index]));
}
           return res.join('');
};

this.ranStr = ranStr;

})();



Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn