Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/ant/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我们应该在javascript中何时使用“==”运算符?_Javascript_Jquery - Fatal编程技术网

我们应该在javascript中何时使用“==”运算符?

我们应该在javascript中何时使用“==”运算符?,javascript,jquery,Javascript,Jquery,何时以及为什么我们应该在javascript或jquery中使用“==”。 建议使用===测试字符串,如果是,原因是什么。 我有一个代码,我正在检查字符串上的一个条件,比如。 如果要检查值及其类型,请使用“==”==进行严格的类型检查。 比如说 var x=5; 变量y=5; var z=5; alertx==y//字符串和int值相同,但类型不同-TRUE alertx==y//值相同但类型不同-FALSE alertx==z//value same和type same-TRUEwith==

何时以及为什么我们应该在javascript或jquery中使用“==”。 建议使用===测试字符串,如果是,原因是什么。 我有一个代码,我正在检查字符串上的一个条件,比如。 如果要检查值及其类型,请使用“==”

==进行严格的类型检查。 比如说

var x=5; 变量y=5; var z=5; alertx==y//字符串和int值相同,但类型不同-TRUE alertx==y//值相同但类型不同-FALSE alertx==z//value same和type same-TRUEwith==您将比较值和数据类型。使用==仅比较值。所以1000==1000是真的,而1000==1000是假的。

简单的回答是:

Triple equals检查类型是否相等。因此,它将检查类型以及内容

e、 g

这是错误的

双等于只能检查内容,因此上面的代码将返回true。

==表示完全相等-比较值和类型

'1' == 1 // true
'1' === 1 // false
您几乎应该始终使用===运算符

举例说明为什么:

1 == '1' //is true
1 === '1' //is false

您希望获得第二个结果,因为===检查类型是否相同。

作为一种良好的实践,请尽可能多地检查

作为最低要求:如果您想专门检查0/false/null值,因为当您使用==时,它们都是相同的:

0 == false // true
0 === false // false
如果你测试了一个值的存在性,但是这个值可能是假的,或者是0,这就不起作用了

if(value){} // false is value === false or value === 0

还有类型相等,但我真的不认为有多大关系,除非你需要依赖于第三方。

A===一些字符串意味着值相等,而且类型相等


这是一个双重测试:在您的情况下,不仅当值相等时,而且当变量a是字符串时,您会得到true。

不总是这样。这不是真的,如果从获取的字符串和数据库中获取的整数呢?相同的值,但是===会破坏东西为什么总是需要检查类型?JavaScript不区分类型,添加函数是有原因的。
if(value){} // false is value === false or value === 0