JavaScript基础--内置对象之Math对象

Math 对象不是构造函数,不需要new,它具有数学常数和函数的属性和方法。跟数学相关的运算(求绝对值,取整、最大值等)可以使用 Math 中的成员。

1. Math对象常用方法

1.1 Max.floor()

Max.floor()   floor表示地板,所以该方法是向下取整,即值会变小,不管后面的小数多大,一律向下取整。

let num=10.2;
console.log(Math.floor(num));  // 10
let num1=10.5;
console.log(Math.floor(num1));  // 10
let num2=10.9;
console.log(Math.floor(num2));  // 10
let num3=-10.9;
console.log(Math.floor(num3));  // -11
let num4=-10.3;
console.log(Math.floor(num4));  // -11

1.2 Max.ceil()

Max.ceil() ceil表示天花板,所以该方法用于向上取整,即值会变大。

let num=10.2;
console.log(Math.ceil(num));  // 11
let num1=10.5;
console.log(Math.ceil(num1));  // 11
let num2=10.9;
console.log(Math.ceil(num2));  // 11
let num3=-10.9;
console.log(Math.ceil(num3));  // -10
let num4=-10.3;
console.log(Math.ceil(num4));  // -10

1.3 Max.round() 

Max.round()  表示四舍五入取整,正数是满5包括5向上取整,否则向下取整;负数是小数部分大于.5向下取整,否则向上取整

let num = 10.2;
console.log(Math.round(num)); // 10
let num1 = 10.5;
console.log(Math.round(num1)); // 11
let num2 = 10.9;
console.log(Math.round(num2)); // 11
let num3 = -10.9;
console.log(Math.round(num3)); // -11
let num4 = -10.5;
console.log(Math.round(num4)); // -10 注意负数的点5是向上取整的
let num5 = -10.3;
console.log(Math.round(num5)); // -10

1.4 Math.max()  / Math.min() 

Math.max()  求最大值, Math.min()  求最小值 

let num1 = 10;
let num2 = 22;
let num3 = 109;
console.log(Math.max(num1, num2, num3));   // 109
console.log(Math.min(num1, num2, num3));   //10

1.5  Math.abs() 

Math.abs()  求绝对值(正数的绝对值是它本身,负数的绝对值是它的相反数,0的绝对值是0)

let num1 = 10;
let num2 = 22.4;
let num3 = -4;
console.log(Math.abs(num1)); // 10
console.log(Math.abs(num2)); // 22.4
console.log(Math.abs(num3)); // 4

2. 随机数方法 random()

random() 方法可以随机返回一个小数,其取值范围是 [0,1),区间的表示方法是左闭右开,即等同于 0 <= x < 1 

我们平时使用random() 方法最多的是得到一个两数之间的随机整数,并且包括这两个数在内:

Math.floor(Math.random() * (max - min + 1)) + min;   // 表示两数之间的随机整数

// 要求:得到一个1-10之间的随机整数
// 为了可以重复使用,此处封装一个函数
function getRandom(min, max) {
 return Math.floor(Math.random() * (max - min + 1)) + min; 
}
console.log(getRandom(1,10));
console.log(getRandom(20,50)); // 得到一个20-50之间的随机整数

3. 案例--猜数字游戏

要求:程序随机生成一个1~10之间的数字,并让用户输入一个数字。 ①如果大于该数字,就提示数字大了,继续猜;②如果小于该数字,就提示数字小了,继续猜;③如果等于该数字,就提示猜对了,结束程序

function getRandom(min, max) {
    return Math.floor(Math.random() * (max - min + 1)) + min;
}
var num = getRandom(1, 10);  // 将随机获得的1-10里面的数字,赋值给变量num
do {
    var inputNum = parseInt(prompt('请输入一个数字:'));
    if (inputNum > num) {
        alert('数字大了');
    } else if (inputNum < num) {
        alert('数字小了');
    } else {
        alert('你猜对了,真的是太棒了');
    }
} while (inputNum != num)  // 如果没有猜对,则会一直猜下去,直到猜对为止

以上就是Math对象常用的方法,需要和其他内置对象进行区别的是Math不是构造函数,不要使用new关键字,直接使用即可。还有就是对于随机数要明确[0,1),以及如何利用它获取两个整数之间的随机整数。

你可能感兴趣的:(JavaScript基础,javascript,前端,开发语言)