2014-10-09 62 views
1

我使用d3.round(num,2)將數字從say,2.567舍入爲2.57。我的問題是,當我這樣做時,無論是否爲零,我都希望始終使用精度爲2的十進制數。d3.format將不會保留結尾零

當我有一個像2.201這樣的數字時,我希望顯示爲2.20,而不是2.2。有什麼方法可以將輪迴函數的格式設置爲始終包含零?

感謝您的幫助!編輯:使用num.toFixed(2)和那個工作,但我返回d3.format(「$」)(num.toFixed(2)),這只是返回$ 2.3,這是我需要的原因這,我期待顯示一個價格。如果任何人有幫助,以提供與,這將是巨大的,謝謝

+2

因爲數字沒有尾隨零。原生['toFixed()'](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/toFixed)會訣竅,但它會返回一個字符串。 – Teemu 2014-10-09 15:18:27

+0

@Teemu - 看到新的編輯,你可以提供的任何其他幫助? (d3.format(「$」)(num))。toFixed(2)'這樣做的工作,所以謝謝你,但d3.format覆蓋它 – seanscal 2014-10-09 15:46:49

+0

刪除d3,或者這樣做:'(d3.format(「$」) – Teemu 2014-10-09 15:49:47

回答

2

試試這個:

d3.format("$.3n")(num); 
+1

@ cyrbil's也是正確的格式(「$ ,. 2f」);' – seanscal 2014-10-09 16:06:01