了解Number.toString(radix)意外标记异常

时间:2015-06-11 18:39:22

标签: javascript

我正在尝试了解4(4)之间的区别。

4.toString(); // SyntaxError: Unexpected token ILLEGAL

(4).toString(); // "4"

我认为这是因为toString()方法是在Number(对象)上定义的,而4是原始数据类型,即。number,它没有toString()方法。

但是,它如何适用于(4).toString()

4 === (new Number(4)) // false
(4) === (new Number(4)) // false. (4) is not an instance of Number object

1 个答案:

答案 0 :(得分:3)

Dot(.)不仅意味着成员访问运营商。它还表示floating-point literals中的小数点。当JS解释器遇到点对点(在你的情况下为4)时,它需要浮点字面值,即点后的数字。这就是为什么你需要在那里分组操作员(parens)。