在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