我尝试过使用Number(x).toLocaleString()
,但这只会给我 10,000 。
当我使用parseFloat(row.profit).toFixed(2)
时,它会给我 10000.00 。我尝试合并parseFloat(Number(row.profit)toLocaleString()).toFixed(2)
但是没有给我想要的输出,应该 10,000.00 。
我怎样才能做到这一点?
答案 0 :(得分:1)
您可以通过测试区域设置字符串中是否存在.
来快速入侵:
function localeFormat(x) {
var num = Number(x).toLocaleString();
if (num.indexOf("/.") > 0) {
num += ".00";
}else{
var n = parseFloat(x).toFixed(2).toString();
num = Number(n).toLocaleString();
}
return num;
}
var strs = ["10000", "10000.45", "10000.45768"];
for(var i = 0; i < strs.length; i++){
console.log(strs[i] + " -> " + localeFormat(strs[i]));
}
&#13;