JavaScript之Math、Number对象
2019-04-19 本文已影响0人
js_hcl
一、Math对象
单例模式,只提供静态属性和方法:常用方法
静态属性
Math.E
Math.PI
静态方法
- 取绝对值
Math.abs()
- 舍入
- 向上舍入
Math.ceil()
ceil /siːl/天花板- 四舍五入
Math.round()
round英 [raʊnd]周围,及看靠谁近- 向下舍入
Math.floor()
floor英 [flɔː]地板
- 伪随机数
Math.random()
返回(0~1)- 大小比较:
min、max
Math.min(1,3,4,-1,-4,7);//-4 Math.max(1,3,4,-1,-4,7);//7 结合apply可以直接对数组进行操作 Math.min.apply(null,[1,3,4,-1,-4,7]);//-4 Math.max.apply(null,[1,3,4,-1,-4,7]);//7
- 其它数学sin、cos等略
二、Number对象
静态属性
Number.MAX_VALUE
:表示JS中最大的数字,约为 1.79e+308Number.MIN_VALUE
:表示JS中最小的数字,约为 5e-324Number.NaN
:返回NaN,表示非数字值
静态方法
Number.isInteger()
:判断参数是否为整数Number.isNaN(value)
:判断参数是否为NaNObject.is(value,NaN);//推荐用这个,这个函数可以判断所有的是不是相等
- 格式化:
parseFloat、parseInt
Number.parseFloat(value);//转为浮点数 Number.parseInt(value);//转为整数
实例方法
(2.34).toFixed(value)
数字转换为指定小数位数的字符串,会采取四舍五入
知识点补充
- Number对象的静态属性方法会挂载到宿主对象上面,
所以可以直接使用
浮点数的加减乘除异常
解决办法(0.1+0.2).toFixed(2);
//0.30浮点数用二进制表达时是无穷的 JavaScript 里的数字是采用 [IEEE 754] 标准的 64 位双精度浮点数( 它可以表示十进制的15或16位有效数字) 因浮点数小数位的限制而截断的二进制数字,再转换为十进制也会会有误差了 console.log(0.1+0.2); 0.30000000000000004