而以前一直都是用等号“==”一直都没在JS里用过全等于符号“===”。而?两种运算符只是检测两个对象的相等性时,一个执行类型转换和一个类型不转换,全等于符号只有在不转换类型前才返回true
var sNum="66";
var iNum=66;
alert(sNum==iNum);//输出为 true
alert(sNum===iNum);//输出为 false
第一个等于运算符在比较的时候就把sNum的值"66"给转换成数字型,再和iNum比较所以会返回为true
而第二个全等号比较就没有进行类型转换,因此字符串和数字类型比较是不能为真的,所有返回false
还有一个非全等号和非等于
var sNum="66";
var iNum=66;
alert(sNum!=iNum);//返回为false
alert(sNum!===iNum);//返回为true
第一个运算符大家都好理解,运算符把sNum转换为数字类型,而转为数字类型后?两个值是相等的从而返回为false
第二个运算符非全等号没有把sNum类型转换所以sNum是不等于iNum的,所以返回为true
?也就是我一个学习笔记呵呵。