js关系运算符非数值的比较
1、对于非数值比较时,会将其先转换为相同类型,再进行比较
var a = 1 > "2";
console.log(a);//a = false
var a = "2" > 12;
console.log(a);//a = false
var a = "2" < 12;
console.log(a);//a = true
2、如果符号两边都是字符串,则比较他们的Unicode编码
var a = "a" > "b";//a的Unicode编码是97,b是98
console.log(a);//a = true
js中 == 和 === 的区别
== 会自动将不同类型进行转换再比较数值的大小
console.log(1 == 1);//返回true
console.log(1 == "1");//返回true
console.log(true == "1");//返回true
=== 则不会自动转换类型,直接进行比较
console.log(1 === "1");//返回false
console.log(true === "1");//返回false
console.log("1" === "1");//返回true