使用或不使用变量的数字之间的差异

difference between numbers using or without using variable

本文关键字:之间 变量 数字      更新时间:2023-09-26

以下代码之间有什么区别?

var a = 1;
a.toString(); // outputs: "1"

但这引发了一个错误:

1.toString();

SyntaxError:意外的令牌非法

为什么?为什么第一个代码有效,而第二个代码抛出错误?

对于方法调用,区分浮点数方法调用点非常重要。因此,您不能编写1.toString();,必须使用以下选项之一:

1..toString()
1 .toString() //space before dot
(1).toString()
1.0.toString()

toString()方法返回一个表示对象的字符串。

所以当你打电话时:

a.toString();

你实际上是在操作一个物体。当您定义一个变量(在本例中是一个数字)时,您实际上是在创建一个内置对象。

当你这样做时:

1.toString();

toString()不将1视为对象或变量(在这种情况下两者都相同),因为它不符合规则:

变量必须以字母开头

这里1不是以字母开头的。因此toString()知道它没有对对象进行操作,并抛出一个错误。

尝试更改语法,

(1) .toString()

数字可以有小数,所以当你解析代码时,以小数结尾的语法有点模糊,使用括号是有效的。当你看到这也是有效的时,就更清楚了:

(1.).toString()

然而,只有

1.toString()它试图解析为一个带小数的数字,但失败了。