基本类型中的布尔类型,取值只有true和false,但是在某些布尔值判断的情况下容易出错,在看书回顾旧知识点的时候,顺便也给总结了一些,若有不足,欢迎更正和补充!
1、空字符串 “”
2、数字 0
3、null
4、undefined
5、数字NaN
注意
1、NaN不等于任何东西,包括它自己
2、undefined 与 null 在 == 判断时为true
以上列举出来的都是容易判断错误的,并且也是特别不明显的很可能造成bug的几点。例如,在实际工作中,我们可能会遇到以下情况:
var a = testBoolean || 22;
console.log(a)这行代码的意思是,如果testBoolean已经存在并且有值,那么a就等于testBoolean的值,否则,a等于22。
正常情况下都不会出错,但如果testBoolean的值为上述举例的5种之一或false,那么结果就不是我们想要的了。
var testBoolean = 0;
var a = testBoolean || 22;
console.log(a) //结果为:22
所以当我们在实际使用过程中,要小心这5类判断,考虑全面,避免产生不必要的bug。
参考书籍:
JavaScript面向对象编程指南(第2版)
版权声明:本文为mm19931027原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。