今天遇到的一个需求,要求把下面这样的数组按照首字母进行排序
let array = [{name: '张三'}, {name: '李四'}, {name: '王五'}]
网上查找方法,发现localeCompare()这个方法可以对中文按首字母排序
array.sort((a, b) => {
return a["name"].localeCompare(b["name"], "zh");
});
//[{name: '李四'}, {name: '王五'}, {name: '张三'}]
该方法的第二个参数代表语言,这里选择中文,然后数组就会按照a-z的顺序来排序了,当然如果需要按照z-a的顺序来的话只需要换一下a和b的对比顺序就可以了