JavaScript中如何比较字符串大小

在最近codeReview中发现有部分同事直接使用字符串去判断,这是很不严谨的写法, 让我们看看如何在js中去比较字符串的大小?

字符串是按每个字符的ASCII码比较

  1. 如果字符串长度为0的情况下,就可以直接比较它们的大小,

'' == '' // true
'' === '' // true
'' > '' or '' < '' // false

复制代码
  1. 如果字符串长度不为0的,字符串可以换成ASCII码,然后去比较其大小

const a = '19'
const b = '111'

a 与 b 按照字符逐个进行比较,直到分出大小为止。
1. a[0] => '1', b[0] => '1'
2. a[1] => '9', b[1] => '1'

'9'.charCodeAt() // 字符串9 转ASCII码 为 57
'1'.charCodeAt() // 字符串1 转ASCII码 为 49

所以这里 a > b 

复制代码

如果这里直接去判断的话,肯定是得不到你想要的结果。

不过可以利用parseIntorparseFloat 方法去转换为数字,然后再去作比较。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值