JS内置对象Math详解

  • Math 是一个内置对象, 它具有数学常数和函数的属性和方法。不是一个函数对象。
  • Math 适用于 Number 类型。它不支持 BigInt。
  • 与其他全局对象不同的是,Math 不是一个构造器。 Math 的所有属性与方法都是静态的。

Math的相关属性

  • Math.E 属性表示自然对数的底数(或称为基数),e,约等于 2.718。(2.718281828459045)
  • Math.LN10属性表示 10 的自然对数,约为 2.302:
  • Math.LN2属性表示 2 的自然对数,约为 0.693:
  • Math.LOG10E属性表示以 10 为底数,e 的对数,约为 0.434:
  • Math.LOG2E属性表示以 2 为底数,e 的对数,约为 1.442:
  • Math.PI表示一个圆的周长与直径的比例,约为 3.14159:
  • Math.SQRT1_2属性表示 1/2 的平方根,约为 0.707:
  • Math.SQRT2属性表示 2 的平方根,约为 1.414:

Math的相关方法

Math.abs(x) 函数返回指定数字 “x“ 的绝对值。

传入一个非数字形式的字符串或者 undefined/empty 变量,将返回 NaN。传入 null 将返回 0。

Math.abs('-1');     // 1
Math.abs(-2);       // 2
Math.abs(null);     // 0
Math.abs("123string"); // NaN
Math.abs();         // NaN
Math.abs(undefined) // NaN

Math.ceil() 函数返回大于或等于一个给定数字的最小整数。

Math.abs('-1.1');     // 1
Math.abs(2.1);       // 3
Math.abs(null);     // 0
Math.abs("string"); // NaN
Math.abs();         // NaN

Math.floor() 返回小于或等于一个给定数字的最大整数。

Math.floor(45.95) // 45 
Math.floor(4) // 4 
Math.floor(-45.05)// -46 

 Math.max() 函数返回一组数中的最大值。

返回给定的一组数字中的最大值。如果给定的参数中至少有一个参数无法被转换成数字,则会返回 NaN。如果没有参数,则结果为 - Infinity。

Math.max(10, 20,30); // 30
Math.max.call(null,10, 20,30);  // 30
Math.max.apply(null,[10, 20,30]); // 30
Math.max(10, 20, 30 , 'test');  //NaN
Math.max() // -Infinity

Math.min() 返回零个或更多个数值的最小值。

Math.min(10, 20,30); // 10
Math.min.call(null,10, 20,30);  // 10
Math.min.apply(null,[10, 20,30]); // 10
Math.min(10, 20, 30 , 'test');  // NaN
Math.min() // Infinity

Math.pow() 函数返回基数(base)的指数(exponent)次幂,即 baseexponent

Math.pow(2, 3) // 2的三次方 = 8

Math.random() 函数返回一个浮点,  伪随机数在范围[0,1),也就是说,从0(包括0)往上,但是不包括1(排除1)

Math.random()

Math.round() 函数返回一个数字四舍五入后最接近的整数。

Math.round(-21.49) // -21

Math.sign() 函数返回一个数字的符号, 指示数字是正数,负数还是零。

此函数共有5种返回值, 分别是 1, -1, 0, -0, NaN. 代表的各是正数, 负数, 正零, 负零, NaN。
传入该函数的参数会被隐式转换成数字类型。

Math.sign(3);     //  1
Math.sign(-3);    // -1
Math.sign("-3");  // -1
Math.sign(0);     //  0
Math.sign(-0);    // -0
Math.sign(NaN);   // NaN
Math.sign("foo"); // NaN
Math.sign();      // NaN

Math.trunc() 方法会将数字的小数部分去掉,只保留整数部分。传入该方法的参数会被隐式转换成数字类型。

Math.trunc(13.37)    // 13
Math.trunc(42.84)    // 42
Math.trunc(0.123)    //  0
Math.trunc(-0.123)   // -0
Math.trunc("-1.123") // -1
Math.trunc(NaN)      // NaN
Math.trunc("foo")    // NaN
Math.trunc()         // NaN

Math.sqrt() 函数返回一个数的平方根

Math.sqrt(9); // 3
Math.sqrt(2); // 1.414213562373095
Math.sqrt(1);  // 1
Math.sqrt(0);  // 0
Math.sqrt(-1); // NaN

 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

wflynn

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值