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 相关文章推荐
javascript中的对象和数组的应用技巧
Jan 07 Javascript
jquery的颜色选择插件实例代码
Oct 02 Javascript
JavaScript(js)设置默认输入焦点(focus)
Dec 28 Javascript
jQuery Form表单取值的方法
Jan 11 Javascript
JavaScript优化以及前段开发小技巧
Feb 02 Javascript
ES6中Generator与异步操作实例分析
Mar 31 Javascript
基于VUE.JS的移动端框架Mint UI的使用
Oct 11 Javascript
vue嵌套路由与404重定向实现方法分析
May 04 Javascript
jQuery实现的老虎机跑动效果示例
Dec 29 jQuery
vue设计一个倒计时秒杀的组件详解
Apr 06 Javascript
微信小程序实现手势滑动卡片效果
Aug 26 Javascript
关于vue3默认把所有onSomething当作v-on事件绑定的思考
May 15 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
星际争霸 Starcraft 秘技补丁
2020/03/14 星际争霸
ajax php传递和接收变量实现思路及代码
2012/12/19 PHP
PHP Session 变量的使用方法详解与实例代码
2013/09/11 PHP
php使用pear_smtp发送邮件
2016/04/15 PHP
加载jQuery后$冲突的解决办法
2010/07/09 Javascript
in.js 一个轻量级的JavaScript颗粒化模块加载和依赖关系管理解决方案
2011/07/26 Javascript
五段实用的js高级技巧
2011/12/20 Javascript
eval的两组性能测试数据
2012/08/17 Javascript
jquery插件珍藏(图片局部放大/信息提示框)
2013/01/08 Javascript
node.js入门教程迷你书、node.js入门web应用开发完全示例
2014/04/06 Javascript
jquery实现通用版鼠标经过淡入淡出效果
2014/06/15 Javascript
浅析js预加载/延迟加载
2014/09/25 Javascript
javascript 动态修改css样式方法汇总(四种方法)
2015/08/27 Javascript
利用jQuery实现漂亮的圆形进度条倒计时插件
2015/09/30 Javascript
AngularJs  unit-testing(单元测试)详解
2016/09/02 Javascript
JS实现图片上传预览功能
2016/11/21 Javascript
TableSort.js表格排序插件使用方法详解
2017/02/10 Javascript
js 博客内容进度插件详解
2017/02/19 Javascript
vue webuploader 文件上传组件开发
2017/09/23 Javascript
React Router v4 入坑指南(小结)
2018/04/08 Javascript
教你如何用Node实现API的转发(某音乐)
2019/09/20 Javascript
关于vue利用postcss-pxtorem进行移动端适配的问题
2019/11/20 Javascript
js验证密码强度解析
2020/03/18 Javascript
基于javascript的无缝滚动动画实现2
2020/08/07 Javascript
Python制作词云的方法
2018/01/03 Python
Python Opencv实现图像轮廓识别功能
2020/03/23 Python
简单了解Python字典copy与赋值的区别
2020/09/16 Python
15个Pythonic的代码示例(值得收藏)
2020/10/29 Python
香港百佳网上超级市场:PARKNSHOP.com
2020/06/10 全球购物
2014年五一劳动节社区活动总结
2014/04/14 职场文书
2014年度个人总结范文
2015/03/09 职场文书
入党积极分子半年考察意见
2015/06/02 职场文书
行为习惯主题班会
2015/08/14 职场文书
Python机器学习之KNN近邻算法
2021/05/14 Python
springboot+zookeeper实现分布式锁
2022/03/21 Java/Android
《极主夫道》真人电影正式预告 定档6月3日上映
2022/04/05 日漫