Math 对象不是构造函数,不需要 new 实例化,直接使用。
Math.PI 即π,值为3.1415626535...... Math.max(); 不传入参数时,返回 -Infinity。 传入的参数中有非 Number 类型的变量时,返回 NaN。 传入的参数全为 Number 类型的变量时,返回最大值。 Math.min(); 不传入参数时,返回 Infinity。 传入的参数中有非 Number 类型的变量时,返回 NaN。 传入的参数全为 Number 类型的变量时,返回最小值。 Math.abs(); 返回绝对值。 Math.floor(); 向下取整。 Math.ceil(); 向上取整。 Math.round(); 四舍五入取整。 Math.random(); 返回一个 [0, 1) 范围内的数值,注意取不到右端点。 -*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*- 练习1:生成两个数之间的随机整数(包含这两个整数)
function randomBetween(min, max) { min = Math.floor(min); max = Math.ceil(max); return Math.floor(Math.random() * (max - min + 1) + min); } console.log(randomBetween(100, 200));
练习2:猜数字。随机生成一个1-100的整数,用户进行猜测输入,返回大了/小了/猜对了!用户只有10次猜的机会。
var result = randomBetween(1, 100); var chances = 10; var guess = prompt('有一个1~100的整数,猜猜它是几?\n您有' + chances + '次机会。\n输入0退出。'); while (true) { chances--; if (guess === '0') { alert('谢谢参与。'); break; } else if (guess == result) { alert('恭喜猜对了数字!答案是:' + result); // 重新开始 result = randomBetween(1, 100); chances = 10; guess = prompt('有一个1~100的整数,猜猜它是几?\n您还有' + chances + '次机会。\n输入0退出。'); } else if (guess != result && chances === 0) { alert('很抱歉,次数已用完。\n这个数字应该是' + result); break; } else if (guess < result && guess > 0) { guess = prompt('太小啦,再猜一猜~\n您还有' + chances + '次机会。\n输入0退出。'); } else if (guess > result && guess <= 100) { guess = prompt('太大啦,再猜一猜~\n您还有' + chances + '次机会。\n输入0退出。'); } else { guess = prompt('输入无效,请输入一个1~100的整数。\n您还有' + chances + '次机会。\n输入0退出。'); } }