比较运算符
比较运算符= =,<,>,<=,>=,!=,= = =,!= =
两侧都是引用类型
比较的都是对象,这比较的是引用。就是比较两者在栈中存放的地址是否指向同一个堆地址,或者说栈中的信息是否相同。
复制代码
1
2
3
4const a = [] const b = [] console.log(a == b)//false
两侧是引用类型和基本数据类型
首先将引用类型转换为基本值,调用其自身的valueOf方法。数组就是调用toString()
两侧都是基本数据类型
- 当数据类型一致时,相当于 === ,比较值是否相同
- 当类型不一致时,先转换类型再比较。转换规则:当存在一个boolean值,立即转换为数字,然后在比较。String和Number比较时,字符串转换为String
复制代码
1
2
3
4
5
6
7
8
9//boolean转数字时,true转为1 const a = 0 const b = true console.log(a == b)//false //字符串转数字 const a = '1' const b = 1 console.log(a == b)//true
null和undefined
复制代码
1
2
3
4
5console.log(null == null)//true console.log(undefined == undefined)//true console.log(null == undefined)//true //NaN和任何值不相等,包括其自身
总结
比较时,先看数据类型,再转换数据类型,再比较。注意存在一个boolean时直接转换为数字就是调用Number(),String和Number比较时,字符串调用Number()。再记住null和undefined的特例。
最后
以上就是眼睛大小蜜蜂最近收集整理的关于比较运算符的使用(==)的全部内容,更多相关比较运算符内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复