注册 登录
编程论坛 JavaScript论坛

javascript小问题请大神们赐教

shenearth 发布于 2016-04-05 11:20, 5380 次点击
菜鸟请教大神们。。。。

var b=" ";//含空格的字符串
if(b>=0 && b<=9){
alert("大");
   
}else{
alert("小");
}
为什么这个结果是大呢?

var b="A";
if(b>0){//这个地方换成b<0结果是一样的。
alert("大");
   
}else{
alert("小");
}
为什么这个结果是小呢?


6 回复
#2
shenearth2016-04-05 14:22
大神们赐教一下啊!!!!!!!!!!
#3
qq10235692232016-04-05 14:35
当数字和字符串比较,且字符串为非纯数字时,则将非数字字符串转成数字的时候会转换为NaN,当NaN和数字比较时不论大小都返回false。http://
#4
shenearth2016-04-05 15:35
回复 3楼 qq1023569223
十分感谢
#5
壮宝出击2016-06-15 20:49
回复 3楼 qq1023569223
那第一个不也是空字符串么  不也应该是小么
#6
龙神2016-06-16 13:46
回复 5楼 壮宝出击
相当于先用Number()强制转换成数字再比较,Number(' ')为0
#7
小羊沉默2016-08-20 17:04
回复 3楼 qq1023569223
空白字符串是个特例,会 转成0,其他的就会是NaN
1