猿问

alert(' '==0);为什么是true啊?

alert(''==0);//true弹出的是true,''应该是false吧?
眼眸繁星
浏览 465回答 2
2回答

HUX布斯

使用==比较两个不同类型的值会先转换,''会转换为false,false又转换为0,所以0==0为true。例如:true==1//true,true转为1'2'==2//true,'2'转为2而使用===比较会先判断两个值类型,如果不一样则直接返回false,否则才会比较值,例如:''===0//false

神不在的星期二

在javascript中,双等号(==)会比较等号两端的内容,比如:"23"==23,这时候返回的是true;三等号(===)不仅会比较等号两端内容,还会比较等号两端内容的类型,比如:"23"===23则返回false,等号两端内容相同,但是类型不一致,左边是string类型,右边是number类型。在JavaScript中,非0都为true,非空都为true,""是空,所以为false。
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答