1. 程式人生 > >JS如何用Math.random()來生成指定範圍內(如:1-100)的隨機數?

JS如何用Math.random()來生成指定範圍內(如:1-100)的隨機數?

一、包括下線數字(lower)不包括上限數字(upper)

/**
 * 產生隨機整數,包含下限值,但不包括上限值
 * @param {Number} lower 下限
 * @param {Number} upper 上限
 * @return {Number} 返回在下限到上限之間的一個隨機整數
 */
function random(lower, upper) {
	return Math.floor(Math.random() * (upper - lower)) + lower;
}
//呼叫:console.log(random(1,100));
二、包括下線數字(lower)也包括上限數字(upper)
/**
 * 產生隨機整數,包含下限值,包括上限值
 * @param {Number} lower 下限
 * @param {Number} upper 上限
 * @return {Number} 返回在下限到上限之間的一個隨機整數
 */
function random(lower, upper) {
	return Math.floor(Math.random() * (upper - lower+1)) + lower;
}  
console.log(random(1,100));

三、擴充套件

/**
 * 產生一個隨機的rgb顏色
 * @return {String}  返回顏色rgb值字串內容,如:rgb(201, 57, 96)
 */
function randomColor() {
	// 隨機生成 rgb 值,每個顏色值在 0 - 255 之間
	var r = random(0, 256),
		g = random(0, 256),
		b = random(0, 256);
	// 連線字串的結果
	var result = "rgb("+ r +","+ g +","+ b +")";
	// 返回結果
	return result;
}