100.toString vs 100 ['toString']

Nic*_*ilt 6 javascript

100['toString'] //does not fail
100.toString //fails
Run Code Online (Sandbox Code Playgroud)

为什么?

100.toString与100.toString()不同.那么为什么在第二种情况下我没有将函数作为返回值?

Mat*_*ley 18

第二行失败,因为它被解析为数字"100",后跟"toString".

要使用点表示法,以下任何一项都可以使用:

(100).toString
100.0.toString
100..toString
var a = 100;
a.toString
Run Code Online (Sandbox Code Playgroud)

如果您尝试调用toString函数,则还需要包括括号:

(100).toString()
100.0.toString()
100..toString()
var a = 100;
a.toString()
Run Code Online (Sandbox Code Playgroud)

我更喜欢使用括号(或变量,如果我已经有一个变量),因为替代品可能会令人困惑和不直观.

  • @Gumbo,JavaScript中的所有数字都是浮点数,因此它们完全相同. (4认同)

Gum*_*mbo 5

(100).toString改用.