JS处理四舍五入函数 toFixed(n)(可取小数点后n位)
在JS中四舍五入的函数 toFixed(n) , n为要保留的小数位数。 n为0~20,当n超过20的时候,JS会出错。
如果小数点前和要截取的前一位都是0时,不会按常理截取。
var h=0.07
h.toFixed(1)的值为0.0
其实要解决这个问题,原来是不一定要重写js中的Number类型的toFixed方法的。
一个非常牛的同事,想到了一个他说很笨,但是我觉得很牛的方法。
JS的API上说, 截取的位数前至少要有一位不是0的。
于是,他这个很笨却很牛的方法是:使用toFixed方法之前加1,使用之后再减去1。
var num = 0.007;//要四舍五入的数字
var fixNum = new Number(num+1).toFixed(2);//四舍五入之前加1
var fixedNum = new Number(fixNum - 1).toFixed(2);//四舍五入之后减1,再四舍五入一下
alert(fixedNum);//弹出的数字就是正确的四舍五入结果啦
方法二:
下面的脚本是重写了toFixed(),这样0.056就可以转化到0.1了
Number.prototype.toFixed=function(len)
{
var add = 0;
var s,temp;
var s1 = this + "";
var start = s1.indexOf(".");
if(s1.substr(start+len+1,1)>=5)add=1;
var temp = Math.pow(10,len);
s = Math.floor(this * temp) + add;
return s/temp;
}
文章来自:http://blog.csdn.net/nuptsv_ice/article/details/10493659
JS处理四舍五入函数 toFixed(n)(可取小数点后n位)的更多相关文章
- js控制input只能输入数字和小数点后两位,输入其他自动清除方法。
工作中input='text'总会遇到要控制输入数字,或者是输入中文,输入电话,输入身份证号,邮箱等.今天我遇到的是要输入数字并且只能小数点后面两位的数字,还不能为负数.废话不多说上代码: <i ...
- js 四舍五入函数 toFixed(),里面的参数 就是保留小数的位数。
js 四舍五入函数 toFixed(),里面的参数 就是保留小数的位数. <script language="javascript"> document.write(& ...
- js除法四舍五入保留小数点后两位写法
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <hea ...
- js保留小数点后N位的方法介绍
js保留小数点后N位的方法介绍 利用toFixed函数 代码如下 复制代码 <script language="javascript"> document.write( ...
- 实现js保留小数点后N位的代码
在JS中,一般实现保留小数点后N位的话,都是利用toFixed函数 <script language="javascript"> document.write(&quo ...
- js截取小数点后几位的写法
截取小数点后几位的方法有很多,下面为大家介绍下使用js是如何实现的 如果${showInfo.tt}的值为20,要要它除以10以后精确到小数点后2位,那么js代码中可作如下写法: 复制代码 代码如下 ...
- Js验证 :只能输入数字和小数点 验证是否是数字 js取float型小数点后两位
JS判断只能是数字和小数点 1.文本框只能输入数字代码(小数点也不能输入)<input onkeyup="this.value=this.value.replace(/\D/g,'') ...
- php number_format()保留小数点后几位有效数的函数 千位分组来格式化数字(转)
PHP保留小数点后2位的函数number_format number_format(带小数点的书,小数点后保留的位数) number_format(8.3486,2); //取得小数点后2位有效数/ ...
- JAVA如何把一个float四舍五入到小数点后2位,4位,或者其它指定位数.
怎么使float保留两位小数或多位小数 http://meryvn.blog.163.com/blog/static/36962664201173010402629/ 两种方法: import j ...
随机推荐
- linux下tomcat自启动设置
1.进入/etc/init.d 2.新建文件tomcat,内容如下: #!/bin/sh # chkconfig: 345 99 10 # description: Auto-starts tomca ...
- 【HTML DOM】Node.nodeValue的用法
目录结构: // contents structure [-] 语法 注意 详述 实例 参考文章 Note.noteValue 属性返回或设置当前属性的值. 语法 value = node.nodeV ...
- jquery插件图片延时加载实例详解
效果预览:http://keleyi.com/keleyi/phtml/image/index.htm 使用方法:1.导入JS插件 <script src="http://keleyi ...
- 高性能javascript学习笔记系列(6) -ajax
参考 高性能javascript javascript高级程序设计 ajax基础 ajax技术的核心是XMLHttpRequest对象(XHR),通过XHR我们就可以实现无需刷新页面就能从服务器端读 ...
- Sass初使用
看慕课网materliu前辈的sass教程,http://www.imooc.com/learn/364.顺便把刚做完的项目重构一下,然后把一些笔记和心得都写在这里~ 首先安装sass,这里直接参考 ...
- Android中的AlertDialog使用示例二(普通选项对话框)
在Android开发中,我们经常会需要在Android界面上弹出一些对话框,比如询问用户或者让用户选择.这些功能我们叫它Android Dialog对话框,AlertDialog实现方法为建造者模式. ...
- iOS面试题总结 (二)
14 OC的理解和特性 OC作为一个面向对象的语言,他也就具有面向对象的特点-封装,继承,多态. OC是一门动态性的语言,他具有动态绑定,动态加载,动态类型.动态即就是在运行时才会做的一些事情. 动态 ...
- FMDB第三方框架
FMDB是同AFN,SDWebImage同样好用的第三方框架,它以OC的方式封装了SQLite的C语言API,使得开发变得简单方便. 附上github链接https://github.com/ccgu ...
- iOS 直播-实现后台录音并推流
iOS 直播-实现后台录音并推流 从一个月前开始开始接收公司的直播类app.到今天为止测试都已接近尾声,但是产品哥哥加了一个要求,就是在app进入后台后也实时保证录音并且推流. 刚听到这个的时候我也是 ...
- (转)基于CAS实现单点登录(SSO):cas client端的退出问题
出处:http://blog.csdn.net/tch918/article/details/22276627 自从CAS 3.4就很好的支持了单点注销功能,配置也很简单. 之前版本因为在CAS服务器 ...