<script>
var Class = prompt('类型');
console.log(typeof Class);//string
console.log(10<Class);
</script>
为了明白js中数字型字符串与number类型的比较做了一个测试
用prompt()得到的应该是一个String类型的值,我依次输入1,11,a得到的打印结果为false,true,false,这是怎么比较的?查了查
1. 10 < ‘1’ //false (此时数字型字符串会转成数字再与前面的数字比较,即10小于1,所以结果为false)10与11比较同理
2. 10<‘a’ //false js会将字符串转成数字,a不能转为数字,js转数字的方法:parseInt(‘a’),解析不到数字,返回一个NaN(not a number)的值。所以结果为false
有时类型转换时,我们要注意隐式转换的条件
比如:转换为number型的-*/,没有+