隐式转换之字符串和数值比较
1.字符串和数值比较,这种数值字符串会隐式转换为数值类型然后比较
var aa='6';
console.log(aa<8); // 输出为true
2.如果aa带有其他字符
var aa='6元';
console.log(aa<8); // 输出为false,不报错
3.如果给aa转换成数值类型为NaN
var aa='6元';
console.log(Number(aa)); // 输出为NaN
4.如果数值和NaN比较
var aa='6元';
console.log(aa<NaN); // 输出为false,不报错
5.带数值字符和NaN、null、undefined比较
var aa='6元';
console.log(aa>NaN); // 输出为false
console.log(aa>undefined); // 输出为false
console.log(aa>null); // 输出为true
6.数值和NaN、null、undefined比较
var aa='6';
console.log(aa>NaN); // 输出为false
console.log(aa>undefined); // 输出为false
console.log(aa>null); // 输出为true
7.纯字符串比较
var aa='2';
console.log('2'<'15'); // 输出为false,原因是字符串在比较的时候会先比较第一位,第一位相同在比较第二位