当前位置: 首页 > 图文教程 > 网络编程 > ASP > 格式化数字函数FormatNumber

ASP
防止网站被采集的理论分析以及十条方法对策
Asp 操作Access数据库时出现死锁.ldb的解决方法
asp HTTP_X_FORWARDED_FOR和REMOTE_ADDR
ASP 代码出现80040e14错误的解决方法
Asp 编码互转的研究和实现代码
asp fckeditor自定义上传文件的文件名
asp javascript picasa相册外链批量导出
asp MD5加密方式使用建议
asp javascript值的互相传递方法
ASP UTF-8编码下字符串截取和获取长度函数
asp vbcrlf是什么意思
ASP 相关文章或者相关产品
在Win2003 64位下ASP无法连接Access数据库
asp 得到动态数组中元素的个数
Session.TimeOut的最大取值是1440,超出会报错
Form Post提交容量大的数据
启动iis出现发生意外0x8ffe2740的解决方法
asp 实现当有新信息时播放语音提示的效果
asp 延时 页面延迟的三种方法
Asp 日期格式化问题

ASP 中的 格式化数字函数FormatNumber


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

    如果有一个数字498.8573945,如何把它格式化成两位小数据呢?用过ASP的都知道,在VbScript里我们可以调用FormatNumber,即用FormatNumber(498.8573945,2)就可以输出:498.86。
  由于JavaScript里没有这个函数,那么我们该如何实现呢?下面我就给出这个函数,大家可以把:<SCRIPT LANGUAGE=javascript SRC="FormatNumber.js"></SCRIPT> 这一句加入你的HTML页即可,也可以用
<!-- #include file="FormatNumber.js" --> 加入你的ASP页;或用
<? include("FormatNumber.js") ?> 加入PHP页中;或用
<%@ #include file="FormatNumber.js" %> 加入JSP页。



这个FormatNumber子函数如下:
<SCRIPT LANGUAGE=javascript>
<!--
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";
    }
    return resultStr;
  }
  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;
      return resultStr;
    }
    else{
      resultStr = srcStr;
      for (i=0;i<(nAfterDot - strLen + dotPos + 1);i++){
        resultStr = resultStr+"0";
      }
      return resultStr;
    }
  }
}