如以下代码 ( var d = 8
) 所示,我将变量 d 定义为 8。但是,我没有制作“八”“d”,那么为什么这是真的:8 === d
?
编辑:这是简单的数学,但是计算机科学和数学不是一回事,我应该阅读===
. 对于在 SO 上提出如此愚蠢的问题,我深表歉意。
如以下代码 ( var d = 8
) 所示,我将变量 d 定义为 8。但是,我没有制作“八”“d”,那么为什么这是真的:8 === d
?
编辑:这是简单的数学,但是计算机科学和数学不是一回事,我应该阅读===
. 对于在 SO 上提出如此愚蠢的问题,我深表歉意。
因为一旦将 8 分配给变量 d 8 == d 就等于说 8==8
d == 8
和之间没有区别8 == d
。它们都计算表达式8
和d
,并比较结果值。这实际上是所有编程语言的工作方式。
您似乎在解释X == Y
为测试是 X 设置为 Y?. 这不是比较表达式的工作方式,因为操作数可以是任意表达式。例如x + 10 == y - 30
,由于两个操作数都不是简单的变量名,您将如何解释诸如使用您的解释之类的事情?
您正在创建一个名为的变量d
并将其值设置为 8。因为左边的值等于右边的值,所以比较为真。在 JavaScript 中, ==比较值。