JS数组对象 | 中文按照首字母排序sort()、localeCompare()

一、数组

// 根据中文の首字母排序
let arr = ['上海','北京','广州','深圳']

arr.sort((a, b) => a.localeCompare(b))
console.log(arr)

// 数组sort()方法是会改变原数组的,可用slice()浅拷贝一份
// newArr = arr.slice(0,arr.length).sort((a, b) => a.localeCompare(b))

二、对象

// 根据enName值的首字母进行排序
let arr = [
  {enName:'sh',name:'上海'},
  {enName:'bj',name:'北京'},
  {enName:'gz',name:'广东'},
  {enName:'sz',name:'深圳'}
]

arr.sort((a, b) => a['enName'].localeCompare(b['enName']))
console.log(arr)

三、参考文章

JS数组对象——中文按照首字母排序(分组)sort()、localeCompare()

JS数组对象——根据日期进行排序Date.parse(),按照时间进行升序或降序排序localeCompare()

js改变原数组,不改变原数组方法总结

posted @ 2023-01-16 23:50  槑孒  阅读(893)  评论(0编辑  收藏  举报