JavaScript相等(==)和全等(===)运算符的区别
相等运算符可以做类型转换,全等运算符是在相等运算之上再加上类型的对比。
1.数字字符串可转换为数字,布尔值也可以转为数字,例如:'1'==true是true
2.Null和Undefined不能进行转换,Null==Undefined是true,它们和0比较都是false
3.NaN表示一个不确切的数值,所以无论和NaN怎么比较都是false
4.比较对象的时候,要考虑引用对象的地址。
猜猜下面代码的运行结果.
1 console.log('6 == 6: ' + (6 == 6)); 2 console.log('6 === 6: ' + (6 === 6)); 3 console.log('6 == "6": ' + (6 == "6")); 4 console.log('6 === "6": ' + (6 === "6")); 5 6 console.log('true == 1: ' + (true == 1)); 7 console.log('false == 0: ' + (false == 0)); 8 console.log('true === 1: ' + (true === 1)); 9 console.log('false === 0: ' + (false === 0)); 10 11 console.log('"" == 0: ' + ("" == 0)); 12 console.log('" " == 0: ' + (" " == 0)); 13 console.log('null == undefined: ' + (null == undefined)); 14 console.log('null == 0: ' + (null == 0)); 15 console.log('undefined == "": ' + (undefined == "")); 16 17 console.log('"false" == false: ' + ("false" == false)); 18 console.log('NaN == NaN: ' + (NaN == NaN)); 19 console.log('NaN == false: ' + (NaN == false)); 20 console.log('NaN === false: ' + (NaN === false)); 21 22 var a = {}; 23 var b = {}; 24 var c = a; 25 26 console.log('a == b: ' + (a == b)); 27 console.log('a === b: ' + (a === b)); 28 console.log('a == c: ' + (a == c)); 29 console.log('a ===c: ' + (a ===c));
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本