关闭

javascript中==和===的区别

113人阅读 评论(0) 收藏 举报
分类:

1.var i=10;

var j="10";

if(i == j)返回的是true

2.

var i=10;

var j="10";

if(i === j)返回的是false


==用于一般比较,===用于严格比较,==在比较的时候可以转换数据类型,===严格比较,只要类型不匹配就返回flase。

举例说明:

"1" == true

类型不同,"=="将先做类型转换,把true转换为1,即为 "1" == 1;

此时,类型仍不同,继续进行类型转换,把"1"转换为1,即为 1 == 1;

此时,"==" 左右两边的类型都为数值型,比较成功!

如果比较:"1" === true 左侧为字符型,右侧为bool布尔型,左右两侧类型不同,结果为false;

如果比较:"1" === 1 左侧为字符型,右侧为int数值型,左右两侧类型不同,结果为false;

如果比较: 1 === 1 左侧为int数值型,右侧为int数值型,左右两侧类型相同,数值大小也相同,结果为true;

如果比较: 1 === 2 左侧为int数值型,右侧为int数值型,左右两侧类型相同,但数值大小不同,结果为false;

简而言之就是 "==" 只要求值相等; "===" 要求值和类型都相等

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:134915次
    • 积分:2577
    • 等级:
    • 排名:第14300名
    • 原创:103篇
    • 转载:156篇
    • 译文:0篇
    • 评论:9条
    最新评论