Discuss / JavaScript / 不懂结尾

不懂结尾

Topic source

123..toString(); // '123', 注意是两个点! (123).toString(); // '123'

这两个地方真的不懂。。。。求解释。。。。。

人渣pcl

#2 Created at ... [Delete] [Delete and Lock User]

123..toString(); // '123', 注意是两个点! (123).toString(); // '123'

  1. 被当成一个浮点类型,相当于123.0toString(),这样肯定报错
就是123.0.toString()  //0被省略的 

123.toString太为难解释器了。 (或者应该说是js的语法分析器bug太多了)。 token词法分析完'123'然后期待后面会不会出现个'.',一旦出现了肯定会直接认定接下来会出现小数,但词法分析器的代码没有考虑后面'123.'会是个Number调用某个方法的情况。。。所以这样Number对象的任何方法都会报语法错误。


  • 1

Reply