如果我嘗試寫爲什麼我無法使用單個點訪問整數屬性?
3.toFixed(5)
有語法錯誤。使用雙點,放置一個空格,將三個放在括號中或使用括號表示可以正常工作。
3..toFixed(5)
3 .toFixed(5)
(3).toFixed(5)
3["toFixed"](5)
爲什麼單點符號不起作用,我應該使用哪一種替代方法呢?
如果我嘗試寫爲什麼我無法使用單個點訪問整數屬性?
3.toFixed(5)
有語法錯誤。使用雙點,放置一個空格,將三個放在括號中或使用括號表示可以正常工作。
3..toFixed(5)
3 .toFixed(5)
(3).toFixed(5)
3["toFixed"](5)
爲什麼單點符號不起作用,我應該使用哪一種替代方法呢?
週期是多少的一部分,所以代碼將被解釋一樣:
(3.)toFixed(5)
這自然會給出一個語法錯誤,因爲你不能緊跟與標識符的數量。
任何方法,保持解釋作爲數字的一部分的時期將工作。我認爲最明顯的方法是在括號中加上括號:
(3).toFixed(5)
由於JavaScript標記器中存在缺陷,您無法訪問它。 JavaScript嘗試解析一個號碼作爲浮點字面點符號,所以你不能用一個屬性或方法遵循它:
2.toString(); // raises SyntaxError
正如你提到的,有一對夫婦的解決方法,其能用於使數字文字也起到對象的作用。其中任何一個都是同樣有效的。
2..toString(); // the second point is correctly recognized
2 .toString(); // note the space left to the dot
(2).toString(); // 2 is evaluated first
要了解更多的使用對象和屬性背後,退房Javascript Garden。
它不工作,因爲JavaScript解釋3.
爲是一個浮點常量的開始(如3.5
),或者一個整個浮點常數(與3. == 3.0
),所以你不能按照它的標識符(在你的情況下,一個屬性名稱)。它未能認識到您希望3
和.
是兩個單獨的標記。
您的任何解決方法對我來說都很好。
+1完全有道理! – Meysam 2012-02-21 15:32:21
請注意,問題只出現在整數文字中 - 小數點很樂意調用任何方法。 3.14.toFixed(2)。 – kennebec 2012-02-21 15:36:48
@kennebec好點,我編輯問題標題說整數,而不是數字。 – 2012-02-21 15:37:56
相關,如果不是重複:[爲什麼數字文字不能訪問數字方法?](http://stackoverflow.com/q/4046342/1048572) – Bergi 2016-02-28 10:40:38