« 诛仙 第二十四集 第二章 困惑 光棍节快乐 »

js中实现四舍五入的二个函数

密陀僧发布 存档 2006年11月9日 次浏览
js中可以使用Math.round实现整数的四舍五入,如果需要实现精确到小数点多少位则需要编写函数了。
下面是两个实现小数点后指定精确位数四舍五入的函数,与君共享。
一.

function   round(v,e)   
  {   
    var   t=1;   
    for(;e>0;t*=10,e--);   
    for(;e<0;t/=10,e++);   
    return   Math.round(v*t)/t;   
  } 


二、

function FormatNumber(srcStr,nAfterDot){
  var srcStr,nAfterDot;
  var resultStr,nTen;
  srcStr = ""+srcStr+"";
  strLen = srcStr.length;
  dotPos = srcStr.indexOf(".",0);
  if (dotPos == -1){
    resultStr = srcStr+".";
    for (i=0;i<nAfterDot;i++){
      resultStr = resultStr+"0";
    }
  }
  else{
    if ((strLen - dotPos - 1) >= nAfterDot){
      nAfter = dotPos + nAfterDot + 1;
      nTen =1;
      for(j=0;j<nAfterDot;j++){
        nTen = nTen*10;
      }
      resultStr = Math.round(parseFloat(srcStr)*nTen)/nTen;
    }
    else{
      resultStr = srcStr;
      for (i=0;i<(nAfterDot - strLen + dotPos + 1);i++){
        resultStr = resultStr+"0";
      }
      
    }
  }
 
 return resultStr;

}

转载请注明:转载自漱风斋[ http://0e2.net/ ]

本文链接地址:http://0e2.net/post/549.html
  • 不懂JS,有机会请教一下啊!!!
  • 评论作者:kola——2006-11-10 16:31:57 回复该留言
  • 我想原理就是先乘以10的n次幂再取整之后处以10的n次幂,我的想法和一直以来的做法都是这样的
  • 评论作者:lx——2006-11-11 23:07:32 回复该留言

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

Copyright 2009-3000 0e2.net. Some Rights Reserved.  Powered By Z-Blog.