日期:2014-05-17  浏览次数:20504 次

js 数值转换问题
请问 如何将 21705 ——》21,705?


并且 我数据中的值为decimal类型的 有些值为0.00  前台就显示为NaN了。如何解决啊?
------解决方案--------------------
引用:
请问 如何将 21705 ——》21,705?


并且 我数据中的值为decimal类型的 有些值为0.00  前台就显示为NaN了。如何解决啊?

先定义


Number.prototype.formatMoney = function(c, d, t){
var n = this, c = isNaN(c = Math.abs(c)) ? 2 : c, d = d == undefined ? "," : d, t = t == undefined ? "." : t, s = n < 0 ? "-" : "", i = parseInt(n = Math.abs(+n 
------解决方案--------------------
 0).toFixed(c)) + "", j = (j = i.length) > 3 ? j % 3 : 0;
   return s + (j ? i.substr(0, j) + t : "") + i.substr(j).replace(/(\d{3})(?=\d)/g, "$1" + t) + (c ? d + Math.abs(n - i).toFixed(c).slice(2) : "");
 };


这样用
(123456789.12345).formatMoney(2, '.', ',');