首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >“'value‘== typeof X”与“typeof X == 'value’”有什么不同?

“'value‘== typeof X”与“typeof X == 'value’”有什么不同?
EN

Stack Overflow用户
提问于 2012-07-06 17:53:55
回答 2查看 179关注 0票数 2

在检查typeof运算符的结果的两个版本之间(编译器/解释器/juju wise等)有什么不同吗?

我之所以问这个问题,是因为我经常看到第一个版本,好像它遵循了一个概念,而第二个版本更具可读性,也更好地描述了我的意图:首先,我感兴趣的是变量的类型,而不是字符串是否等于某个东西。

更新:虽然这不是原始问题的一部分,但值得注意的是,当您要检查相等时,x == y从来都不是一个好的做法。为此,应该始终使用===运算符。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-07-06 17:56:36

更新

在功能上没有区别,但似乎在JavaScript中,无论哪种方式都会出现错误(这很好,这要归功于JS):

代码语言:javascript
复制
Invalid left-hand side in assignment

因此,这似乎只是其他编程语言开发人员的一种习惯。例如在PHP中,如果你这样做了:

代码语言:javascript
复制
if ($var = 'foo') 

PHP会默默地将foo作为值赋给$var,但会使用以下内容:

代码语言:javascript
复制
if ('foo' = $var) 

它将抛出一个错误。

我之所以这么问,是因为我经常看到第一个版本

他们的所作所为没有区别。但是第一个版本会抛出错误,如果你碰巧写到:

代码语言:javascript
复制
'value' = typeof X

请注意=而不是=====

这通常是很好的做法,来自其他语言的人在JavaScript中也有这样做的习惯。

票数 4
EN

Stack Overflow用户

发布于 2012-07-06 17:57:18

没有区别,因为等价操作将返回相同的东西,而不管它是以哪种方式返回的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11359938

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档