ES6中Math对象的部分扩展


Posted in Javascript onFebruary 20, 2017

1、Math.trunc()

该方法用于取出一个小数的小数部分,返回整数部分。看例子吧:

Math.trunc(1.234);  //1
Math.trunc(-2.34141);  //-2
Math.trunc(3.9);  //3
//对于非数值,Math.trunc会内部使用Number将其转为数值
Math.trunc("12.87656");  //12
//对于空值和无法截取整数的值,返回NaN
Math.trunc("a");  //NaN
Math.trunc();  //NaN
Math.trunc(NaN);  //NaN

2、Math.sign()

该方法用来判断一个数到底是正数,负数,还是0。有五中返回值。看下面例子吧:

Math.sign(23.235);  //1
Math.sign(25);  //1
Math.sign(0);  //0
Math.sign(0.0);  //0
Math.sign(-0.0);  //-0
Math.sign(-0);  //-0
Math.sign(-2);  //-1
Math.sign(-2.983958);  //-1
Math.sign('a');  //NaN
Math.sign();  //NaN
Math.sign(NaN);  //NaN

参数为正数时,返回1;

参数为0时,返回0;

参数为-0时,返回-0;

参数为负数时,返回-1;

参数为其他值时,返回NaN。

3、Math.cbrt()

该方法用于计算一个数的立方根,等同于Math.pow(n,1/3)方法。

Math.cbrt(8);  //2
Math.cbrt(-64);  //-4
//对于非数值,该方法内部也是先使用Number方法将其转化为数值,再进行计算
Math.cbrt("125");  //5
Math.cbrt("a");  //NaN

4、Math.hypot()

该方法用于计算所有参数平方和的平方根。

Math.hypot(3,4);   //5
Math.hypot(1,2,3);  //3.741657386773941
Math.hypot(-5);  //5
Math.hypot();  //0
Math.hypot(NaN);  //NaN
Math.hypot("a");  //NaN
Math.hypot(3,'4');  //5
Math.hypot(3,'a');  //NaN

以上几种方法均可以大大的简化代码,很方便。

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

Javascript 相关文章推荐
JS模块与命名空间的介绍
Mar 22 Javascript
纯JavaScript实现的兼容各浏览器的添加和移除事件封装
Mar 28 Javascript
JavaScript中用getDate()方法返回指定日期的教程
Jun 09 Javascript
jQuery支持添加事件的日历特效代码分享(3种样式)
Aug 24 Javascript
JavaScript tab选项卡插件实例代码
Feb 23 Javascript
一些实用性较高的js方法
Apr 19 Javascript
jQuery插件echarts实现的单折线图效果示例【附demo源码下载】
Mar 04 Javascript
Vue利用Blob下载原生二进制数组文件
Sep 25 Javascript
vue.js实现二级菜单效果
Oct 19 Javascript
一篇文章告诉你如何实现Vue前端分页和后端分页
Feb 18 Vue.js
Javascript中Microtask和Macrotask鲜为人知的知识点
Apr 02 Javascript
JS setTimeout与setInterval的区别
Apr 20 Javascript
微信小程序左滑删除效果的实现代码
Feb 20 #Javascript
JavaScript轮播图简单制作方法
Feb 20 #Javascript
Ajax异步获取html数据中包含js方法无效的解决方法
Feb 20 #Javascript
原生js实现放大镜
Feb 20 #Javascript
jQuery实现单击按钮遮罩弹出对话框效果(2)
Feb 20 #Javascript
Webpack+Vue如何导入Jquery和Jquery的第三方插件
Feb 20 #Javascript
jquery Easyui Datagrid实现批量操作(编辑,删除,添加)
Feb 20 #Javascript
You might like
修改了一个很不错的php验证码(支持中文)
2007/02/14 PHP
php 获取select下拉列表框的值
2010/05/08 PHP
PHP中函数rand和mt_rand的区别比较
2012/12/26 PHP
ThinkPHP的L方法使用简介
2014/06/18 PHP
PHP函数checkdnsrr用法详解(Windows平台用法)
2016/03/21 PHP
PHP使用mysqli操作MySQL数据库的简单方法
2017/02/04 PHP
PHP封装的多文件上传类实例与用法详解
2017/02/07 PHP
php实现姓名根据首字母排序的类与方法(实例代码)
2018/05/16 PHP
PHP实现数组根据某个字段进行水平合并,横向合并案例分析
2019/10/08 PHP
利用WebBrowser彻底解决Web打印问题(包括后台打印)
2009/06/22 Javascript
解决jquery1.9不支持browser对象的问题
2013/11/13 Javascript
node.js中的console.log方法使用说明
2014/12/09 Javascript
node.js中的fs.fstatSync方法使用说明
2014/12/15 Javascript
js实现仿百度风云榜可重复多次调用的TAB切换选项卡效果
2015/08/31 Javascript
jquery动态导航插件dynamicNav用法实例分析
2015/09/06 Javascript
微信开发 使用picker封装省市区三级联动模板
2016/10/28 Javascript
jquery实现刷新随机变化样式特效(tag标签样式)
2017/02/03 Javascript
node.js调用Chrome浏览器打开链接地址的方法
2017/05/17 Javascript
详解ElementUI之表单验证、数据绑定、路由跳转
2017/06/21 Javascript
three.js实现3D视野缩放效果
2017/11/16 Javascript
jQuery插件实现的日历功能示例【附源码下载】
2018/09/07 jQuery
浅谈让你的代码更简短,更整洁,更易读的ES6小技巧
2018/10/25 Javascript
Javascript实现打鼓效果
2021/01/29 Javascript
[39:19]完美世界DOTA2联赛PWL S2 SZ vs LBZS 第二场 11.26
2020/11/30 DOTA
Python3 XML 获取雅虎天气的实现方法
2018/02/01 Python
django admin 后台实现三级联动的示例代码
2018/06/22 Python
Python 判断图像是否读取成功的方法
2019/01/26 Python
缅甸网上购物:Shop.com.mm
2017/12/05 全球购物
标签和贴纸印刷:Lightning Labels
2018/03/22 全球购物
PatPat香港:婴童服饰和亲子全家装在线购物
2020/09/27 全球购物
SQL Server提供的3种恢复模型都是什么? 有什么区别?
2012/05/13 面试题
迟到检讨书400字
2014/01/13 职场文书
档案室主任岗位职责
2014/02/12 职场文书
春节随笔
2015/08/15 职场文书
幼儿园托班开学寄语(2016秋季)
2015/12/03 职场文书
如何用JavaScipt测网速
2021/05/09 Javascript