js对数字的格式化使用说明

  在jsp页面上可以使用<fmt:------对数字对行格式化

  在js中----------

  Javascript也提供了对数字进行格式化输出的支持

  Number对象提供的几种格式化函数:

  toExponential([fractionDigits]) :将数字按科学计数法格式返回,其中的fractionDigits值小数点后保留的位数。

  toFixed([fractionDigits]) :将数字按指定的小数点位数返回,其中的fractionDigits值小数点后保留的位数。

  toPrecision([precision]) :将数字按指定的精度返回(这个精度不是指小数点后几位),其中precision是指定的精度值。

  var num=56.45678;

  var rs1=num.toExponential(2);//rs1的值为5.65e+1

  var rs2=num.toFixed(2);//rs的值为56.45

  var rs3=num.toPrecision(2);//rs的值为56

  虽然说Number对象提供的这些方法能够解决不少的数字转化问题,但是对于许多情况还是不好满足的,例如对百分号的支持等等。

  为了解决这个问题,并提供更为强大和灵活的数字格式化要求,JsJava专门提供了的Javascript自定义类来进行支持,你可以下载jsjava-1.0.js,引用其中的src/jsjava/text/NumberFormat.js或者直接引用jslib/jsjava-1.0.js,举例如下:

  

复制代码 代码如下:

  <script src="js/jsjava/text/NumberFormat.js"></script>

  <script src="js/jsjava/lang/StringBuffer.js"></script>

  <script src="js/jsjava/lang/IllegalArgumentException.js"></script>

  <script>

  var nf=new DecimalFormat();

  nf.applyPattern("000.000%");

  var res=nf.format(-0.893566);

  document.write(res+"<br>");

  nf.applyPattern("0000.00");

  var res=nf.format(-53.385967);

  document.write(res+"<br>");

  nf.applyPattern("0000.000E00");

  var res=nf.format(53.385967);

  document.write(res+"<br>");

  </script>

  显示结果为:

  -89.357%

  -53.39

  5338.597e-2

  相关文档下载