2014-03-13 49 views
0

我在表格中有数字,需要用JavaScript格式化它们(点后2个符号)。 此代码的工作,但我想有更高效,更优雅的方式:用JavaScript格式化字符串

var str = "126389471.74000001"; 
var dotIndex = str.indexOf("."); 
var formattedStr = str.substring(0, dotIndex+3); 

任何人可以提出更好的解决办法?

回答

1

你为什么把他们当作摆在首位字符串?这将是更好的使用JavaScript与toFixed()自动处理这个问题:

var num = 126389471.74000001, 
    formatted = num.toFixed(2); 

jsFiddle Demo

如果你绝对到汤治疗它作为一个字符串,使用parseFloat()和相同的方法:

var formatted = parseFloat(num).toFixed(2); 
5

我认为你正在寻找toFixed

var str = "126389471.74000001"; 
var formattedStr = parseFloat(str).toFixed(2); // 2 dp