-2

toString何らかの理由で、リテラル番号を呼び出そうとすると失敗します。

> 5.toString()
SyntaxError: Unexpected token ILLEGAL

だから私はそれを変数に入れてみましたが、うまくいきました:

> var five = 5
undefined
> five.toString()
"5"

これは少し奇妙だと思い、さらに実験を重ねた結果、リテラルを括弧で囲むと何とか機能することがわかりました。

> (5).toString()
"5"

それはとても奇妙に思えました!リテラルを括弧で囲むと何かが変わるのはなぜですか? なぜ機能し5.toString()ないのですか?

4

2 に答える 2

8

数値の後のドット.は小数点を表します。

そうすればうまくいくでしょう。

5..toString();

JavaScript で小数点の後に数値が続く場合を明確にするために、次の文字が数値の文字であると想定しtoString()ますt

これは同じことを行うもう 1 つの有効な方法ですが、読みやすく従うのが簡単です。

5.0.toString();
于 2013-05-20T22:41:12.200 に答える
2

リテラルを括弧で囲むと何かが変わるのはなぜですか?

これにより、リテラルが式になります。その結果、式でメソッドを呼び出すことができます.toString()。@Musa によってリンクされているよう.に、数値の後の は小数点として解釈され、t が有効な数値ではないため、5.t が検出されたときに例外がスローされます。

于 2013-05-20T22:41:21.347 に答える