Math对象的random方法返回0到1之间的伪随机数,可能等于0,但一定小于1。
生成给定范围内的随机数,包括min但不包含max
function getRandomArbitrarty(min, max) {
return Math.random() * (max - min) + min;
}
生成给定范围内的随机数,包括min也包含max
function getRandomArbitrarty(min,max) {
return Math.random() * (max - min + 1) + min;
}
生成给定范围内的整数
function getRandomArbitrarty(min, max) {
return Math.floor(Math.random() * (max - min) + min);
}
// 使用Math.floor方法对数值进行向下取整,Math.ceil方法向上取整
生成一个随机字符串
function random(min, max) {
return Math.floor(Math.random() * (max - min) + min);
}
function randomStr(len) {
var str = '';
var dict = '1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
for (var i = 0; i < len; i++) {
str += dict[random(0, 62)];
}
return str;
}
var newStr = randomStr(8);
console.log(newStr);
生成一个随机IP地址
IP地址的范围是:0.0.0.0 ~255.255.255.255
由于Math.random()生成的随机数包括0,但是不包括1,所以要生成0~255之间的随机数应该使用0~256的范围。
function random(min, max) {
return Math.floor(Math.random() * (max - min) + min);
}
function randomIp() {
var ipArr = [];
for (var i = 0; i < 4; i++) {
ipArr.push(random(0, 256));
}
return ipArr.join('.');
}
console.log(randomIp());
生成一个随机颜色
function randomColor() {
var dict = '0123456789abcdef';
var arr = [];
for (var i = 0; i < 6; i++) {
arr[i] = dict[Math.floor(Math.random() * 16)];
}
arr.unshift('#');
return arr.join('');
}
console.log(randomColor());
更多随机颜色的获取方法:javascript获取随机颜色