了解数字到字符串(基数)意外的标记异常

Understanding Number.toString(radix) unexpected token exception

本文关键字:意外 异常 基数 数字 字符串 了解      更新时间:2023-09-26

我试图了解4(4)之间的区别。

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

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

但是,它如何为(4).toString()工作?

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

点 ( . ) 不仅意味着成员访问运算符。它还表示浮点文本中的小数点。当JS解释器遇到一个又一个数字(在你的例子中4)时,它期望浮点文字,即一个又一个的数字。这就是为什么你需要在那里使用分组运算符(parens)。