首页 > 编程笔记 > JavaScript笔记 阅读:4

JavaScript Math对象的用法(附带实例)

JavaScript 对象分为 3 种,分别是自定义对象、内置对象和浏览器对象:
Math 是 JavaScript 的一个内置对象,它拥有一些数学常数属性和数学函数方法。

Math 的所有属性与方法都是静态的,使用时不需要创建 Math 对象实例,直接使用 Math 对象名来访问属性或方法,如 Math.PI、Math.max()。

Math 对象的常用方法如下表所示。

表 1 Math对象的常用方法
方法名 功能 举例 结果
abs 返回绝对值 Math.abs(10); 结果为 10
ceil 返回大于变量的最小整数 Math.ceil(10.5); 结果为 11
floor 返回小于变量的最大整数 Math.floor(10.5); 结果为 10
max 返回最大值 Math.max(10, 6); 结果为 10
min 返回最小值 Math.min(10, 6); 结果为 6
pow 计算次方 Math.pow(2, 3); 结果为 8
sqrt 返回平方根 Math.sqrt(4); 结果为 2
round 对浮点数进行四舍五入 Math.round(6.652); 结果为 7
random 返回一个浮点数,伪随机数范围从 0 到小于 1 Math.random(); 结果为 0~1 的随机数

【实例】定义函数 getRandomArbitrary(min, max),返回一个在指定值之间的随机数。这个值不小于 min(有可能等于),并且小于(不等于)max。
function getRandomArbitrary(min, max) {
    return Math.random() * (max - min) + min;
}

console.log(getRandomArbitrary(5, 10));
console.log(getRandomArbitrary(5, 10));
console.log(getRandomArbitrary(5, 10));
console.log(getRandomArbitrary(5, 10));
console.log(getRandomArbitrary(5, 10));
程序中,Math.random() 的返回值范围在大于或等于 0 到小于 1 之间,经过算术运算,可以得到的值的范围在大于或等于 min 到小于 max 之间。由于 Math.random() 返回随机数,因此每次调用函数 getRandomArbitrary(5, 10) 时其输出结果都有可能不同。

程序在 Chrome 浏览器控制台中的运行结果为:

7.23456789
8.98765432
6.54321098
9.87654321
5.12345678


【实例】定义函数 getRandIP(),返回一个随机 IP 地址,一个合法的 IP 地址范围是“0.0.0.0”到“255.255.255.255”。
function getRandom(min, max) {
    return min + Math.floor(Math.random() * (max - min));
}

function getRandIP() {
    var arr = [];
    for (var i = 0; i < 4; i++) {
        arr[i] = getRandom(0, 256);
    }
    return arr.join('.');
}

console.log(getRandIP());
console.log(getRandIP());
console.log(getRandIP());
程序中,函数 getRandom(0,256) 的取值范围是大于或等于 0 到小于 256 之间的整数。在函数 getRandIP() 中调用 getRandom(0,256) 返回 4 个随机整数值,保存在数组 arr 中,然后调用数组方法 join(),用圆点符号(.)将数组元素拼接在一起,得到 IP 地址。

每次调用函数 getRandIP() 的输出结果都有可能不同。程序在 Chrome 浏览器中的运行结果为:

192.168.1.1
10.0.0.1
172.16.254.1

相关文章