美文网首页
在JavaScript中,判断 0 == '' 返回true的问

在JavaScript中,判断 0 == '' 返回true的问

作者: 请叫我Mr彼特 | 来源:发表于2020-10-23 15:11 被阅读0次
if (0 == '') {
  console.log('Y');
} else {
  console.log('N');
}
//结果是 Y
0 和 '' 值等会相等呢?其实在JavaScript中,这个判断条件会存在隐式转换,我们可以分为两步分析:
  • '' 在判断中会隐式转为false;
  • 而非0即真,那么0就是false;
所以, 0 == '' 的判断就等同于是 false == false,那么if的结果就是true了。
如果要真正判断0 是不等于 '' 值的话,需要用到 0 === '' 这样强类型去判断,就不会产生类型隐式转换的问题了。
if (0 === '') {
  console.log('Y');
} else {
  console.log('N');
}
//结果是 N

相关文章

网友评论

      本文标题:在JavaScript中,判断 0 == '' 返回true的问

      本文链接:https://www.haomeiwen.com/subject/lxmvmktx.html