关于if判断布尔类型以及a==b的情况

if 语句中经常需要判断一个值的布尔类型,其中最多的情况就是a==b的情况,因此总结一下要点。

当判断a==b是否为真时,首先我们需要看a与b的数据类型。

数据类型现在有一下常见的六种。

1.数值(number):整数和小数(比如1和3.14)

2.字符串(string):字符组成的文本(比如"Hello World")

3.布尔值(boolean):true(真)和false(假)两个特定值

4.undefined:表示“未定义”或不存在,即由于目前没有定义,所以此处暂时没有任何值

5.null:表示无值,即此处的值就是“无”的状态。

6.对象(object):各种值组成的集合,可分为狭义的对象(object),数组(array)以及函数(function)。


知道了数据类型我们要开始进行比较,如果两个值的类型不同,有一下情况:

1.如果一个是null,一个是undefined,那么相等。

2.如果一个是数字,一个是字符串,先将字符串转为数字,然后比较,其中NaN==NaN为true,但是NaN===NaN为false。

3.如果一个值是true/false则将其转为1/0比较。

4.如果一个值是对象,一个是数字或字符串,则尝试使用valueOf和toString转换后比较。

5.其它均不相等。


除了a==b的情况,另一种情况即直接对于数据类型来判断布尔类型,则有一下几种情况:

1.Undefined输出为false。

2.Null输出为false。

3.布尔值(Boolean)直接进行判断。

4.Number+0, −0, 或者 NaN 为 false, 其他为 true。

5.String空字符串为 false,其他都为 true

6.Object均输出为true。


以上

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 第2章 基本语法 2.1 概述 基本句法和变量 语句 JavaScript程序的执行单位为行(line),也就是一...
    悟名先生阅读 4,216评论 0 13
  • 1 Object 对象 教程:https://wangdoc.com/javascript/stdlib/obje...
    智勇双全的小六阅读 2,068评论 0 0
  • 1、标识符 标识符是指变量、函数、属性的名字,或函数的参数。 格式规则: 第一个字符必须是一个字母、下划线(_)或...
    风中丶凌乱阅读 1,660评论 0 0
  • 巧克力酱猫咪棉花糖12个套装 细心一看,每只喵星人样子也各具特色,个性十足!送给身边的猫迷朋友必定惊喜十足!就算不...
    funpanda阅读 363评论 2 2
  • 天下无不散之筵席,转眼之间便要离开这群可爱的孩子了。今天已经将我的所有课程都讲完了,上课的时候和孩子们说这是最后一...
    萤梦社会实践队阅读 165评论 0 0