资讯专栏INFORMATION COLUMN

js抽象相等

genedna / 1429人阅读

摘要:字符串和数字之间的相等比较如果是数字,是字符串,则返回的结果如果是字符串,是数字,则返回的结果其他类型和布尔类型之间的相等比较如果是布尔类型,则返回的结果如果是布尔类型。

字符串和数字之间的相等比较

如果Type(x)是数字,Type(y)是字符串,则返回x == ToNumber(y)的结果

如果Type(x)是字符串,Type(y)是数字,则返回ToNumber(x) == y的结果

其他类型和布尔类型之间的相等比较

如果Type(x)是布尔类型,则返回ToNumber(x) == y的结果

如果Type(y)是布尔类型。则返回x == ToNumber(y)的结果

var x = true
var y = "22"
console.log(x == y) //false
var x = "22"
var y = false
console.log(x == y) //false
null和undefined之间的比较

如果x为null,y为undefined,则结果为true

如果y为null,x为undefined,则结果为true

var a = null;
var b
console.log(a == b) //true
console.log(b == null) //true
console.log(a == false) //false
console.log(b == false) //false
console.log(a == "") //false
console.log(b == "") //false
console.log(a == 0) //false
console.log(b == 0) //false
对象和非对象之间的相等比较

如果Type(x)是字符串或数字,Type(y)是对象,则返回x == ToPrimitive(y)的结果

如果Type(x)是对象,Type(y)是字符串或数字,则返回ToPrimitive(x) == y的结果

var a = 22
var b = [22]
console.log(a == b) //true
[22]首先调用ToPrimitive抽象操作,返回“22”,变成“22” == 22,然后又变成22 == 22,最后两者相等

以上内容是个人的一点总结,如果有错误或不严谨的地方,欢迎批评指正,如果喜欢,欢迎点赞收藏

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/88468.html

相关文章

  • js抽象相等==

    摘要:中抽象相等比较算法大致介绍一下的数据类型的数据类型分为种如果再加上数据类型,一共种与的区别描述一个空值空的对象引用即空指针,被当做一个对象,输出为算是一个吧,输出为。运算符把其值参数转换为非类型对象。 Javascript中抽象相等比较算法 undefined==null //true []==[] //false []==![] //true {}==!{} //false ![]=...

    hzx 评论0 收藏0
  • JS中的关系比较与相等比较运算

    摘要:在中的关系比较运算,指的是像这种大小值的关系比较。而相等比较,可区分为标准相等比较与严格相等比较两大种类。 在JS中的关系比较(Relational Comparison)运算,指的是像x < y这种大小值的关系比较。 而相等比较,可区分为标准相等(standard equality)比较x == y与严格相等(strict equality)比较x === y两大种类。严格相等比较会...

    paraller 评论0 收藏0
  • 深入理解JavaScript的类型转换

    摘要:等同于等同于其他类型和布尔类型之间的比较如果是布尔类型,则返回的结果。 showImg(https://segmentfault.com/img/bVburFq?w=796&h=398); 前言 JavaScript作为一门弱类型语言,我们在每天的编写代码过程中,无时无刻不在应用着值类型转换,但是很多时候我们只是在单纯的写,并不曾停下脚步去探寻过值类型转换的内部转换规则,最近通过阅读你...

    W4n9Hu1 评论0 收藏0
  • 深入理解JavaScript的类型转换

    摘要:等同于等同于其他类型和布尔类型之间的比较如果是布尔类型,则返回的结果。 showImg(https://segmentfault.com/img/bVburFq?w=796&h=398); 前言 JavaScript作为一门弱类型语言,我们在每天的编写代码过程中,无时无刻不在应用着值类型转换,但是很多时候我们只是在单纯的写,并不曾停下脚步去探寻过值类型转换的内部转换规则,最近通过阅读你...

    niuxiaowei111 评论0 收藏0
  • 深入理解JavaScript的类型转换

    摘要:等同于等同于其他类型和布尔类型之间的比较如果是布尔类型,则返回的结果。 showImg(https://segmentfault.com/img/bVburFq?w=796&h=398); 前言 JavaScript作为一门弱类型语言,我们在每天的编写代码过程中,无时无刻不在应用着值类型转换,但是很多时候我们只是在单纯的写,并不曾停下脚步去探寻过值类型转换的内部转换规则,最近通过阅读你...

    shuibo 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<