javaScript字符串与数字之间的比较

自学JS接近两个月,遇到的问题真不少,js真是一门让人惊喜的语言,弱类型语言

下面我就简单谈一谈关于JavaScript中关于 字符串 与 数字 比较大小的那些事


//1.纯数字之间比较
console.log(1<3);//true
  
//2.纯字符串比较,先转成ASCII码,按位依次比较
console.log("1"<"3");//true
console.log('5'<'10');//false
console.log("5".charCodeAt());//53
console.log("1".charCodeAt());//49
console.log("123"<"123");//false

console.log("a"<"b");//true
console.log("a".charCodeAt());//97
console.log("b".charCodeAt());//98
console.log("abc"<"aad");//false          
  
//3.汉字比较
console.log("我".charCodeAt());//25105
console.log("的".charCodeAt());//30340
console.log("我"<"的");//true,汉字比较,转成ASCII码
  
//4.当数字和字符串比较,且字符串为数字。则将数字字符串转为数字
console.log(123<"124");//true,下面一句代码得出124的ASCII码为49,所以并不是转成ASCII比较
console.log("124".charCodeAt());//49
  
//5.当数字和字符串比较,且字符串为非纯数字时,则将非数字字符串转成数字的时候会转换为NaN,当NaN和数字比较时不论大小都返回false.
console.log(13>"abc")//false

总结起来就3点:

1:纯字符串比较,转换成ASCII码在进行比较;

2:纯数字和数字字符串相比较,则将字符串数字隐式转换成数字再进行比较;

3:纯数字和非数字字符串比较,都返回false;


以上,如有不足或者错误之处,还请指出,谢谢!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值