在JavaScript中是!=一模一样==

在JavaScript中是!=一模一样==,javascript,syntax,Javascript,Syntax,可能的重复项: 看 是=与相同==在JavaScript中?不,它不一样。例如,见 它们微妙地不一样 =检查值 ==检查值和类型 '1' != 1 // false (these two are the same) '1' !== 1 // true (these two are **not** the same). 在前面的示例中。表达式的前半部分是字符串,后半部分是整数。不仅检查值,还检查比较对象的类型。这在php和其他一些语言中也是一样的 !==不完全相同 !=不相上下 “相同

可能的重复项:


=
相同==在JavaScript中?

不,它不一样。例如,见


它们微妙地不一样

=检查值
==检查值和类型

'1' != 1   // false (these two are the same)
'1' !== 1 // true (these two are **not** the same).

在前面的示例中。表达式的前半部分是字符串,后半部分是整数。

不仅检查值,还检查比较对象的类型。这在php和其他一些语言中也是一样的

!==不完全相同

!=不相上下

“相同”是指相同的类型

在JavaScript中,数字、字符串和布尔值按值进行比较。 ... 另一方面,对象、数组和函数通过引用进行比较。”

--


总之,它们是一样的吗?否,因为有一个附加测试!==(结束!=)用于类型相同和相等。

最大的区别在于!=执行类型强制。也就是说,在检查相等性之前,一个值被有效地转换为另一个值。这就是为什么,正如阿玛迪埃的回答:

'1' != 1

计算结果为false。这同样适用于==v.==。通常,避免==和!=除非你特别想要强制执行。使用===和!==然后检查你想要的结果。

请看@S.Lott:他需要知道它们被称为“Javascript比较运算符”,因为有一件事——问题并不意味着他会这样做(对原始海报公平)。试着输入
==在谷歌,看看你得到什么结果。甚至
javascript==-所以谷歌不会帮助另一个特定于
的重复=:@fudgey:你可以在谷歌上搜索很多东西。。也许他没找到。。斯洛特的评论是不切实际的,对于完全瘦的人来说,没有什么比得上规范。你可以从这里下载最新的:它是以“tc39-”开头的PDF文件(截至本文撰写时,tc39-2009-050.PDF)。这是一个草案,但本月早些时候投票通过了。看看如何阅读规范!呵呵,事实上,你需要一本手册来阅读规范,这确实说明了规范本身的质量:)
'1' != 1