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()