http://blog.csdn.net/btbtd/archive/2006/10/14/1334601.aspx

解决方案 »

  1.   

    by 梅花雪(meizz)
    //将数字转换成三位逗号分隔的样式
    function formatNum(s) 
    {
      if(!/^(\+|-)?\d+(\.\d+)?$/.test(num)){alert("wrong!"); return num;}
      var re = new RegExp().compile("(\\d)(\\d{3})(,|\\.|$)");
      num += ""; 
      while(re.test(num))
        num = num.replace(re, "$1,$2$3")
      return num;
    }
    alert(formatNum(-12345678.123));
    alert(formatNum("12345678.123"));
    alert(formatNum("10000000000000000000000000000000000000000"));
      

  2.   

    比较简单的做法:利用vbs的FormatNumber
    <script language="vbscript">
    Function FormatNum(n,p)
       FormatNum = FormatNumber(n,p,0,0,-1)
    End Function
    </script>
    <script language="javascript">
    var n=12375634341.344556;
    alert(FormatNum(n,6))  
    </script>
      

  3.   

    function format(value) {    var offset = value.length % 3;
        var result = value.substring(0, offset);
        for (var i = offset; i < value.length; i += 3 ) {
            if (result.length != 0) {
                result += ",";
            }
            result += value.substring(i, i + 3);
        }
        return result;
    }
      

  4.   

    谢谢各位高人的帮忙,我自己后来查出来一个 和zhaoxiaoyang(梅雪香@深圳)  基本相似