当前位置: 首页 > 图文教程 > 网络编程 > Javascript > 关于四舍五入的问题,toFixed()

Javascript
12个最常见的CSS问题的javascript解决方案
JavaScipt布局网页的11个网页特效实例
6个设计优秀的下拉导航菜单效果
Webjx收集jquery实现动画效果的插件和教程
MooTools教程和资源(Webjx收集英文教程)
游戏人文件夹程序 ver 3.0
游戏人文件夹程序 ver 4.03
Javascript写了一个清除“logo1_.exe”的杀毒工具(可扫描目录)
datePicker:日期选择控件(with jquery)
通过jquery实现tab标签浏览效果
js压缩利器
一个高效的JavaScript压缩工具 JSA 下载
User Scripts: Video Download by User Scripts
use jscript Create a SQL Server database
发布一个高效的JavaScript分析、压缩工具 JavaScript Analyser
[原创]js循环输出图片,不足的要补0
[原创]js判断ie方法集锦(含正则)代码短小经典
利用404错误页面实现UrlRewrite的实现代码
[原创]js判断是否有中文的脚本_js判断中文方法集合
图片上传即时显示缩略图的js代码

Javascript 中的 关于四舍五入的问题,toFixed()


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-10   浏览: 253 ::
收藏到网摘: n/a

关于四舍五入的问题,在2000可以,在98会报错.
那是因为toFixed (Jscript 5.5)才支持,98是ie5.0,JavaScript 的版本是(JScript5.0)版本.所以就会提示:"对象不支持此属性或方法!".
为了版本兼容,我们得自己写函数实现.

<script>
// by wanghr100
/* 这样,就可以直接用toFixed()了.*/
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;
}
alert((52.277).toFixed(2))
alert((100.024).toFixed(1))
</script>

//应该还有更好的算法,大家试试看吧:)