JavaScript Math 对象的常用方法

时间:2023-03-08 18:48:34
JavaScript Math 对象的常用方法

JavaScript Math 对象

Math 对象

Math 对象用于执行数学任务。

使用 Math 的属性和方法的语法:

var pi_value=Math.PI;
var sqrt_value=Math.sqrt(15);

注释:Math 对象并不像 Date 和 String 那样是对象的类,因此没有构造函数 Math(),像 Math.sin() 这样的函数只是函数,不是某个对象的方法。您无需创建它,通过把 Math 作为对象使用就可以调用其所有属性和方法。

Math对象属性:

JavaScript Math 对象的常用方法

console.log(Math.E);  // 2.718281828459045
console.log(Math.LN2); // 0.6931471805599453
console.log(Math.LN10); // 2.302585092994046
console.log(Math.LOG2E); // 1.4426950408889634
console.log(Math.LOG10E); // 0.4342944819032518
console.log(Math.PI); // 3.141592653589793
console.log(Math.SQRT1_2); // 0.7071067811865476
console.log(Math.SQRT2); // 1.4142135623730951

Math 对象方法

JavaScript Math 对象的常用方法

常用函数:

// ceil():向上舍
console.log(Math.ceil(0.60)); // 1
console.log(Math.ceil(0.40)); // 1
console.log(Math.ceil(5)); // 5
console.log(Math.ceil(5.1)); // 6
console.log(Math.ceil(-5.1)); // -5
console.log(Math.ceil(-5.9)); // -5 // floor():向下舍
console.log(Math.floor(0.60)); // 0
console.log(Math.floor(0.40)); // 0
console.log(Math.floor(5)); // 5
console.log(Math.floor(5.1)); // 5
console.log(Math.floor(-5.1)); // -6
console.log(Math.floor(-5.9)); // -6 // round():四舍五入
console.log(Math.round(0.60)); // 1
console.log(Math.round(0.50)); // 1
console.log(Math.round(0.49)); // 0
console.log(Math.round(-4.40)); // -4
console.log(Math.round(-4.60)); // -5 // exp(x):e的x次幂的值
console.log(Math.exp(1)); // 2.718281828459045
console.log(Math.exp(-1)); // 0.36787944117144233
console.log(Math.exp(5)); // 148.4131591025766
console.log(Math.exp(10)); // 22026.465794806718 // pow(x,y):x的y次幂的值。
console.log(Math.pow(0,0)); // 1
console.log(Math.pow(0,1)); // 0
console.log(Math.pow(1,1)); // 1
console.log(Math.pow(1,10)); // 1
console.log(Math.pow(2,3)); // 8
console.log(Math.pow(-2,3)); // -8
console.log(Math.pow(2,4)); // 16
console.log(Math.pow(-2,4)); // 16 // log(x):x的自然对数。
console.log(Math.log(2.7183)); // 1.0000066849139877
console.log(Math.log(2)); // 0.6931471805599453
console.log(Math.log(1)); // 0
console.log(Math.log(0)); // -Infinity
console.log(Math.log(-1)); // NaN // sqrt(x):x的平方根。
console.log(Math.sqrt(0)); // 0
console.log(Math.sqrt(1)); // 1
console.log(Math.sqrt(9)); // 3
console.log(Math.sqrt(0.64)); // 0.8
console.log(Math.sqrt(-9)); // NaN // max() 最大值
console.log(Math.max(5,7)); // 7
console.log(Math.max(-3,5)); // 5
console.log(Math.max(-3,-5)); // -3
console.log(Math.max(7.25,7.30)); // 7.3 // min() 最小值
console.log(Math.min(5,7)); // 5
console.log(Math.min(-3,5)); // -3
console.log(Math.min(-3,-5)); // -5
console.log(Math.min(7.25,7.30)); // 7.25 // random() 返回0 ~ 1的随机数。
console.log(Math.random()); // 0.01338207854060558[随机]
console.log(Math.random()); // 0.7355174677792391[随机]

abs(x) 、acos(x)、asin(x)、atan(x)、atan2(y,x)、 sin(x)、cos(x)、tan(x):

// abs():求绝对值
console.log(Math.abs(7.25)); // 7.25
console.log(Math.abs(-7.25)); // 7.25
console.log(Math.abs(7.25-10)); // 2.75 // acos():求反余弦值
console.log(Math.acos(0.64)); // 0.8762980611683406
console.log(Math.acos(0)); // 1.5707963267948966
console.log(Math.acos(-1)); // 3.141592653589793
console.log(Math.acos(1)); // 0
console.log(Math.acos(2)); // NaN // asin(x):求反正弦
console.log(Math.asin(0.64)); // 0.694498265626556
console.log(Math.asin(0)); // 0
console.log(Math.asin(-1)); // -1.5707963267948966
console.log(Math.asin(2)); // NaN // atan(x):求反正切
console.log(Math.atan(0.50)); // 0.4636476090008061
console.log(Math.atan(-0.50)); // -0.4636476090008061
console.log(Math.atan(5)); // 1.373400766945016
console.log(Math.atan(10)); // 1.4711276743037347
console.log(Math.atan(-5)); // -1.373400766945016
console.log(Math.atan(-10)); // -1.4711276743037347 // sin():求正弦值
console.log(Math.sin(3)); // 0.1411200080598672
console.log(Math.sin(-3)); // -0.1411200080598672
console.log(Math.sin(0)); // 0
console.log(Math.sin(Math.PI)); // 1.2246467991473532e-16
console.log(Math.sin(Math.PI/2)); // 1 // cos():求余弦值
console.log(Math.cos(3)); // -0.9899924966004454
console.log(Math.cos(-3)); // -0.9899924966004454
console.log(Math.cos(0)); / 1
console.log(Math.cos(Math.PI)); // -1
console.log(Math.cos(2*Math.PI)); // 1 // tan():求正切值
console.log(Math.tan(0.50)); // 0.5463024898437905
console.log(Math.tan(-0.50)); // -0.5463024898437905
console.log(Math.tan(5)); // -3.380515006246586
console.log(Math.tan(10)); // 0.6483608274590866
console.log(Math.tan(-5)); // 3.380515006246586
console.log(Math.tan(-10)); // -0.6483608274590866 // atan2():返回从 x 轴到点 (x,y) 之间的角度。
console.log(Math.atan2(0.50,0.50)); // 0.7853981633974483
console.log(Math.atan2(-0.50,-0.50)); // -2.356194490192345
console.log(Math.atan2(5,5)); // 0.7853981633974483
console.log(Math.atan2(10,20)); // 0.4636476090008061
console.log(Math.atan2(-5,-5)); // -2.356194490192345
console.log(Math.atan2(-10,10)); // -0.7853981633974483

toSource()

// 有问题:!toSource() 方法返回表示对象源代码的字符串。
function employee(name,job,born) {
this.name=name;
this.job=job;
this.born=born;
} var bill = new employee("Bill Gates","Engineer",1985); console.log(bill.toSource());

valueOf()

valueOf() 方法返回 Math 对象的原始值。

该原始值由 Math 对象派生的所有对象继承。

valueOf() 方法通常由 JavaScript 在后台自动调用,并不显式地出现在代码中。