这里整理了几个产生随机数的方法:
1、generateUUID()
//获取一个唯一数
function generateUUID() {
var d = new Date().getTime();
var uuid = 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {
var r = (d + Math.random() * 16) % 16 | 0;
d = Math.floor(d / 16);
return (c == 'x' ? r : (r & 0x3 | 0x8)).toString(16);
});
return uuid;
};
2、CreateRandomNum()
/*
生成随机数列表(可能会有重复)
intLentgh:要产生多少个随机数
intMinNum:产生随机数的最小值
intMaxNum:产生随机数的最大值
*/
var CreateRandomNum = function (intLentgh, intMinNum, intMaxNum) {
var arr = [];
for (var i = intMinNum; i <= intMaxNum; i++)
arr.push(i);
arr.sort(function () {
return 0.5 - Math.random();
});
arr.length = intLentgh;
return arr;
}
3、CreateRandomNumS()
/*
生成随机数列表(不会重复)
intLentgh:要产生多少个随机数
intMinNum:产生随机数的最小值
intMaxNum:产生随机数的最大值
*/
var CreateRandomNumS = function (intLentgh, intMinNum, intMaxNum) {
var arr = [];
var json = {};
while (arr.length < intLentgh) {
//产生单个随机数
var ranNum = Math.ceil(Math.random() * (intMaxNum - from)) + intMinNum;
//通过判断json对象的索引值是否存在 来标记 是否重复
if (!json[ranNum]) {
json[ranNum] = 1;
arr.push(ranNum);
}
}
return arr;
}