【发布时间】:2023-03-09 18:44:01
【问题描述】:
152..toString(2)
正确创建二进制字符串“10011000”,但是
152.toString(2)
抛出异常
"SyntaxError: 标识符在数字文字之后立即开始"
为什么?后者的语法实际上听起来更正确,而前者看起来很奇怪!
【问题讨论】:
-
可能解析器试图将 10.[andsomething] 解释为浮点数......只是说
-
因为当您想将文字数字转换为字符串时,您只需使用文字字符串(“10”)。又名,谁在乎呢。
-
@SJuan76 确实如此。将 10 括在括号中将起作用
(10).toString() -
这只是一个猜测,但解析器可能认为
10.toString中的toString是分数的开始,而在后一种情况下,您将 0 作为分数,然后在浮点数上运行 toString .这可能意味着var n = 10.;也有效(但从未尝试过)。 -
10.0.toString()也可以
标签: javascript syntax