我正在使用codecademy学习Javascript,我正在进行一些比较,而对于我的代码我做了:
`console.log(1 == 2)`
并返回False
。
我也做了:
`console.log(2*2 === 3)`
并且还返回了False
。
为了检查我没有犯错,我做了:
`console.log(1 == 1)`
并返回True
说明告诉我===
表示等于。
使用==
代替===
时是否有任何问题?而且,哪个更好用,为什么?
感谢你们给我的任何帮助!
答案 0 :(得分:3)
这实际上取决于具体情况。通常建议使用===
,因为在大多数情况下,这是正确的选择。
==
表示相似,而
===
表示平等。这意味着需要考虑对象类型。
'1' == 1
是真的
1 == 1
是真的
'1' === 1
是假的
1 === 1
是真的
使用==
时,如果1是数字或字符串则无关紧要。
答案 1 :(得分:3)
使用==仅比较值,===也比较变量的类型。
1 == 1 -> true
1 == "1" -> true
1 === 1 -> true
1 === "1" -> false, because 1 is an integer and "1" is a string.
如果你必须确定函数是返回0还是假,你需要===,因为0 == false是真但是0 === false是假。
答案 2 :(得分:2)
http://www.w3schools.com/js/js_comparisons.asp
== is equal to || x==8 equals false
=== is exactly equal to (value and type) || x==="5" false
meaning that 5==="5" false; and 5===5 true
毕竟,这取决于你想要的比较类型。