javascript

您所在的位置:网站首页 js按字母排序 javascript

javascript

2023-08-17 17:01| 来源: 网络整理| 查看: 265

楼主这个问题很不错,中文拼音排序一直都是很有趣的一个问题。推荐使用这个函数 String.prototype.localeCompare(),链接 MDN。

给题主分享一下我之前弄过的(代码不是我原创,也是模仿别人写的),首先用 localeCompare 试下拼音排序:

var array = ['武汉', '北京', '上海', '天津']; array.sort( function compareFunction(param1, param2) { return param1.localeCompare(param2); } ); array // ["北京", "上海", "天津", "武汉"]

然后根据 26 个英文字母分组排序,函数如下,

function pySegSort(arr) { if(!String.prototype.localeCompare) return null; var letters = "*abcdefghjklmnopqrstwxyz".split(''); var zh = "阿八嚓哒妸发旮哈讥咔垃痳拏噢妑七呥扨它穵夕丫帀".split(''); var segs = []; var curr; letters.forEach(function(item,i){ curr = {letter: item, data:[]}; arr.forEach(function(item2){ if((!zh[i-1] || zh[i-1].localeCompare(item2)


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3