2013-04-30 21 views
1

呈現整個數與2位小數(5.00)我有此需要在javascript

Math.round((Math.abs(21600/3600))*100)/100 
>> 6 # want 6.00 
Math.round((Math.abs(21000/3600))*100)/100 
>> 5.83 # This is right 

我需要整數2位小數。

+0

太棒了! 3分鐘內出現5個答案 – 2013-04-30 11:03:03

+0

[Format number to always show 2 decimal places]的可能重複(http://stackoverflow.com/questions/6134039/format-number-to-always-show-2-decimal-places) – Curt 2013-04-30 11:13:16

+0

Alnitak's答案使這是一個很好的交談。他的回答也大大清理了代碼! – 2013-04-30 11:32:09

回答

3

您可以使用.toFixed(),但手動沒有必要一輪值精確到0.01第一 - 在.toFixed功能會爲你做的。

var str = Math.abs(21600/3600).toFixed(2); 
+0

+1最乾淨的答案 – Dennis 2013-04-30 11:03:47

+0

+1爲最乾淨的答案。我會盡快接受。 – 2013-04-30 11:04:50

+0

感激地接受了所有選票 - 今天我試圖擊中100k代表;-) – Alnitak 2013-04-30 11:05:18

1

試試這個:

(Math.round((Math.abs(21600/3600))*100)/100).toFixed(2) 
1

您可以使用toFixed()方法:

var num = num.toFixed(6); 

現在NUM WIL等於6.00

+1

DOM的東西添加到這個答案是什麼? OP可能甚至沒有使用瀏覽器。 – Alnitak 2013-04-30 11:04:17

2

使用Number.prototype.toFixed()MDN

(Math.round((Math.abs(21600/3600))*100)/100).toFixed(2); 
+0

這是矯枉過正 - '(21600/3600).toFixed(2)'足夠 – Dennis 2013-04-30 11:01:16

+0

@丹尼斯是真實的,但它完全不相關的問題。 – jAndy 2013-04-30 11:06:21

+1

這完全相關。 OP正試圖乘以/ round/divide來修剪數字 - toFixed處理這個,所以沒有必要。 – Dennis 2013-04-30 11:25:03