将数组按照拼音排序,并按字母排序
2018-03-20 16:25
411 查看
按拼音排序:var resultArray = arr.sort( //数组按照abcd排列
function compareFunction(param1, param2) {
return param1.localeCompare(param2,"zh");
}
);将数组按照拼音排序(多音字无法辨别,需手动区分),并按字母分类:function pySegSort(arr,empty) {
if(!String.prototype.localeCompare)
return null;
var letters = "*ABCDEFGHJKLMNOPQRSTWXYZ".split('');
var zh = "阿吧擦大额发噶哈鸡看啦嘛拿哦怕去让仨他哇西呀咋".split('');
console.log(letters.length+"-----------------"+zh.length)
var segs = [];
var curr;
$.each(letters, function(i){
curr = {letter: this, data:[]};
$.each(arr, function() {
// if((!zh[i-1] || zh[i-1].localeCompare(this,"zh") <= 0) && this.localeCompare(zh[i],"zh") == -1) {
// curr.data.push(this);
// }
if((!zh[i-1] || zh[i-1].localeCompare(this,"zh") <= 0) && this.localeCompare(zh[i],"zh") == -1) {
curr.data.push(this);
}
});
if(empty || curr.data.length) {
segs.push(curr);
curr.data.sort(function(a,b){
return a.localeCompare(b,"zh");
});
}
});
// console.log("1--------------"+typeof segs );
return segs;
}
function compareFunction(param1, param2) {
return param1.localeCompare(param2,"zh");
}
);将数组按照拼音排序(多音字无法辨别,需手动区分),并按字母分类:function pySegSort(arr,empty) {
if(!String.prototype.localeCompare)
return null;
var letters = "*ABCDEFGHJKLMNOPQRSTWXYZ".split('');
var zh = "阿吧擦大额发噶哈鸡看啦嘛拿哦怕去让仨他哇西呀咋".split('');
console.log(letters.length+"-----------------"+zh.length)
var segs = [];
var curr;
$.each(letters, function(i){
curr = {letter: this, data:[]};
$.each(arr, function() {
// if((!zh[i-1] || zh[i-1].localeCompare(this,"zh") <= 0) && this.localeCompare(zh[i],"zh") == -1) {
// curr.data.push(this);
// }
if((!zh[i-1] || zh[i-1].localeCompare(this,"zh") <= 0) && this.localeCompare(zh[i],"zh") == -1) {
curr.data.push(this);
}
});
if(empty || curr.data.length) {
segs.push(curr);
curr.data.sort(function(a,b){
return a.localeCompare(b,"zh");
});
}
});
// console.log("1--------------"+typeof segs );
return segs;
}
相关文章推荐
- 数组按照拼音首字母排序后转为字符串
- 在PHP中,将一个汉字数组按照拼音首字母进行排序
- php和mysql采用utf-8编码时实现按照一个文本字段的首字母的拼音顺序进行排序的方法
- IOS开发 汉字转拼音 把用户名按照姓名首字母进行排序
- PHP 字符串数组按照拼音排序的问题
- sql语句-按照汉字拼音首字母排序
- PHP排序之二维数组的按照字母排序方法
- 数据库按照汉字拼音首字母排序
- sql语句按照汉字拼音首字母排序
- 字符串数组按照字母排序
- 微软面试题-字符串数组按照字母排序
- 按照拼音对数组中的中文字符串排序的算法
- 分类按照拼音第一字母排序显示实现
- oracle 数据库字段按照拼音首字母排序
- sql语句按照汉字拼音首字母排序
- sql语句-按照汉字拼音首字母排序
- PHP排序之二维数组的按照字母排序方法
- 面试题题排序,字符串数组按照字母排序,不区分大小写比较
- ios 按照拼音对数组中的中文字符串排序的算法
- PHP排序之二维数组的按照字母排序方法