当前位置: 首页 > 图文教程 > 网络编程 > Javascript > javascript FormatNumber函数实现方法

Javascript
javascript 响应键盘特定按键(只响应数字键)
javascript indexOf方法、lastIndexOf 方法和substring 方法
javascript parseInt 函数分析(转)
javascript Split方法,indexOf方法、lastIndexOf 方法和substring 方法
JavaScript 面向对象入门精简篇
JS中==与===操作符的比较
JavaScript indexOf忽略大小写
dwr spring的集成实现代码
DWR Ext 加载数据
JavaScript 计算当天是本年本月的第几周
Js 获取当前日期时间及其它操作实现代码
javascript multibox 全选
JS array 数组详解
javascript 对象定义方法 简单易学
javascript 补零 函数集合
div scroll始终在最底部的实现代码
javascript eval()用法
javascript 打印页面代码
JAVASCRIPT THIS详解 面向对象
javascript 页面跳转方法集合

Javascript 中的 javascript FormatNumber函数实现方法


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 266 ::
收藏到网摘: 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;
    }
  }
}