ES6+ Math 对象的扩展运用
发布时间:2023-03-24 08:51:08 所属栏目:教程 来源:
导读:在编程中遇到数学问题时一般会借助 Math 这个 JavaScript 的内置对象,它拥有一些数学常数属性和数学函数方法。Math 不是一个函数对象,它主要用于 Number 类型。
与其他全局对象不同的是,Math 不是一个构造器。
与其他全局对象不同的是,Math 不是一个构造器。
在编程中遇到数学问题时一般会借助 Math 这个 JavaScript 的内置对象,它拥有一些数学常数属性和数学函数方法。Math 不是一个函数对象,它主要用于 Number 类型。 与其他全局对象不同的是,Math 不是一个构造器。Math 的所有属性与方法都是静态的。比如: 圆周率的写法是 Math.PI, 调用正余弦函数的写法是 Math.sin(x),x 是要传入的参数。 Math 的常量是使用 JavaScript 中的全精度浮点数来定义的。本节我们主要学习,ES6 对 Math 对象的扩展。 Math.trunc() 方法会将数字的小数部分去掉,只保留整数部分,是一个取整操作。 Math 中还有三个方法: Math.floor()、Math.ceil()、Math.round() ,也是用于取整操作的,但是他们有一定逻辑的: Math.floor() 向下取整; Math.ceil() 向上取整; Math.round() 进行四舍五入操作。 相比之下 Math.trunc() 的执行逻辑就很简单,仅仅是删除掉数字的小数部分和小数点,不管参数是正数还是负数。 使用语法: Math.trunc(value) 参数说明: 参数 描述 value 可以是任意数字,如果是非数值则会被隐式转换为数字类型 实例 基本实例: Math.trunc() // 5 Math.trunc() // 5 Math.trunc(-) // -5 Math.trunc(-) // -5 Math.trunc(-) // -0 上面的代码中,第 5 行虽然结果是 0 但是 0 前面的负号还会被保留。 传入该方法的参数会被隐式转换成数字类型,也就是对于非数值,Math.trunc() 内部使用 Number() 方法将其先转为数值。 Math.trunc('123.456') // 123 Math.trunc(true) //1 Math.trunc(false) // 0 Math.trunc(null) // 0 对于空值和无法截取整数的值,返回 NaN。 Math.trunc(); // NaN Math.trunc('imooc'); // NaN Math.trunc(undefined) // NaN Math.trunc(); // NaN Math.sign() 方法用来判断一个数到底是正数、负数、还是零。对于非数值,会先将其转换为数值。 使用语法: Math.sign(value) 参数说明: 参数 描述 value 可以是任意数字,如果是非数值则会被隐式转换为数字类型 Math.sign() 会返回五种值。 参数为正数,返回 + 1; 参数为负数,返回 - 1; 参数为 0,返回 0; 参数为 - 0,返回 - 0; 其他值,返回 NaN。 实例 Math.sign(); // 1 Math.sign(-); // -1 Math.sign("-7.5"); // -1 Math.sign(); // 0 Math.sign(-); // -0 对应 -0 转换后的结果会保留负号,如果参数是非数值,会自动转为数值。对于那些无法转换为数值的值,会返回 NaN。 Math.sign(); // NaN Math.sign("foo"); // NaN Math.sign(); // NaN (编辑:汽车网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐