美文网首页
按字母顺序排序之localeCompare

按字母顺序排序之localeCompare

作者: 钱英俊真英俊 | 来源:发表于2019-04-15 15:04 被阅读0次

一个简单的按字母排序的功能

  • 两个API array.sortarray.localeCompare
  • 实现:
let arr = []
 arr.sort((a, b) => {
      return a.label.localeCompare(b.label)
  })

原理:
  • 1.Array.sort([compareFunction])

    MND
    1. referenceStr.localeCompare(compareString[, locales[, options]])
      MND
解析:
  1. sort()本身也是可以实现排序功能的,但是 sort是按照ASCII编码排序的,即数字的ASCII码<大写字母的ASCII码<小写字母的ASCII码,所以如果有大小写或数字的话,sort不一定能满足要求
let names = ['1', 'a', 'A', 'B', 'b', '2', 'C', 'c']
console.log(names.sort((a, b) => {
  return a - b
}), '---sort---')
console.log(names.sort((a, b) => {
  return a.localeCompare(b)
}),'---localeCompare---')

结果:


相关文章

网友评论

      本文标题:按字母顺序排序之localeCompare

      本文链接:https://www.haomeiwen.com/subject/zytuwqtx.html