2010-08-13 50 views
1

這段代碼有什麼問題?javascript(toFixed)方法有什麼問題?

var result = 985.toFixed(2); 

修復該問題:

var result = (985).toFixed(2); 

我還是想知道原因。 :)

+3

它只是一個解析器問題 - 括號使分析器很容易知道數字標記是完整的,而'。'可能表明有數字的一小部分。 – sje397 2010-08-13 03:39:23

+0

你可以在點之前插入空格。 – mykhal 2010-08-13 03:45:50

+0

或者完全指定數字(記住,js中的所有數字都是浮點數):'985.0.toFixed(2)'。這也避免瞭解析器部分的混淆。 – slebetman 2010-08-13 04:12:34

回答

6

在第一個示例中,Javascript解釋器將該點解釋爲小數點,因爲它在數字後面。

將數字放在括號內可以避開這個限制。