JS實(shí)現(xiàn)中文漢字按拼音排序的方法
本文實(shí)例講述了JS實(shí)現(xiàn)中文漢字按拼音排序的方法。分享給大家供大家參考,具體如下:
代碼1,拼音排序:
var array = ['武漢', '北京', '上海', '天津'];
var resultArray = array.sort(
function compareFunction(param1, param2) {
return param1.localeCompare(param2,"zh");
}
);
console.log(resultArray);
火狐瀏覽器 resultArray 結(jié)果為:
[ '北京' , '上海' , '天津' ,'武漢' ] ;
代碼2,拼音排序并按字母分類(lèi):
function pySegSort(arr,empty) {
if(!String.prototype.localeCompare)
return null;
var letters = "*abcdefghjklmnopqrstwxyz".split('');
var zh = "阿八嚓噠妸發(fā)旮哈譏咔垃痳拏噢妑七呥扨它穵夕丫帀".split('');
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(empty || curr.data.length) {
segs.push(curr);
curr.data.sort(function(a,b){
return a.localeCompare(b,"zh");
});
}
});
return segs;
}
JSON.stringify(pySegSort(["我","不","懂","愛(ài)","啊","按","已","呀","選","縣"]))
結(jié)果:
"[
{"letter":"a","data":["啊","愛(ài)","按"]},
{"letter":"b","data":["不"]},
{"letter":"d","data":["懂"]},
{"letter":"w","data":["我"]},
{"letter":"x","data":["縣","選"]},
{"letter":"y","data":["呀","已"]}
]"
擴(kuò)展:
JS獲取中文拼音首字母,并通過(guò)拼音首字母快速查找頁(yè)面內(nèi)的中文內(nèi)容: http://chabaoo.cn/article/90842.htm
JS實(shí)現(xiàn)超簡(jiǎn)單的漢字轉(zhuǎn)拼音功能示例:http://chabaoo.cn/article/100864.htm
一個(gè)實(shí)現(xiàn)漢字與拼音互轉(zhuǎn)的小巧web工具庫(kù):https://github.com/sxei/pinyinjs
PS:這里再為大家推薦2款比較實(shí)用的相關(guān)在線排序工具供大家參考使用:
在線中英文根據(jù)首字母排序工具:
http://tools.jb51.net/aideddesign/zh_paixu
在線文本倒序翻轉(zhuǎn)排序工具:
http://tools.jb51.net/aideddesign/flipped_txt
更多關(guān)于JavaScript相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《JavaScript查找算法技巧總結(jié)》、《JavaScript遍歷算法與技巧總結(jié)》、《JavaScript傳值操作技巧總結(jié)》、《javascript編碼操作技巧總結(jié)》、《JavaScript中json操作技巧總結(jié)》、《JavaScript切換特效與技巧總結(jié)》、《JavaScript動(dòng)畫(huà)特效與技巧匯總》、《JavaScript錯(cuò)誤與調(diào)試技巧總結(jié)》、《JavaScript數(shù)據(jù)結(jié)構(gòu)與算法技巧總結(jié)》及《JavaScript數(shù)學(xué)運(yùn)算用法總結(jié)》
希望本文所述對(duì)大家JavaScript程序設(shè)計(jì)有所幫助。
- javascript實(shí)現(xiàn)獲取中文漢字拼音首字母
- JS獲取中文拼音首字母并通過(guò)拼音首字母快速查找頁(yè)面內(nèi)對(duì)應(yīng)中文內(nèi)容的方法【附demo源碼】
- js 獲取中文拼音,Select自動(dòng)匹配字母獲取值的代碼
- js提取中文拼音首字母的封裝工具類(lèi)
- JavaScript 中文轉(zhuǎn)拼音實(shí)現(xiàn)代碼 有些bug
- javascript對(duì)中文按照拼音排序代碼
- Extjs Gird 支持中文拼音排序?qū)崿F(xiàn)代碼
- js實(shí)現(xiàn)中文轉(zhuǎn)拼音的完整步驟記錄
相關(guān)文章
通過(guò)JS自動(dòng)隱藏手機(jī)瀏覽器的地址欄實(shí)現(xiàn)原理與代碼
大家通過(guò)手機(jī)自帶瀏覽器打開(kāi)百度、淘寶,在首頁(yè)加載完畢后,會(huì)自動(dòng)隱藏頁(yè)面上方的地址欄,感興趣的朋友可以參考下2013-01-01
JS實(shí)現(xiàn)的簡(jiǎn)易拖放效果示例
這篇文章主要介紹了JS實(shí)現(xiàn)的簡(jiǎn)易拖放效果的方法,涉及JS事件監(jiān)聽(tīng)、擴(kuò)展及頁(yè)面元素動(dòng)態(tài)操作的相關(guān)技巧,需要的朋友可以參考下2016-12-12
Web前端開(kāi)發(fā)工具——bower依賴包管理工具
Bower 是 twitter 推出的一款包管理工具,基于nodejs的模塊化思想,把功能分散到各個(gè)模塊中,讓模塊和模塊之間存在聯(lián)系,通過(guò) Bower 來(lái)管理模塊間的這種聯(lián)系,本文給大家介紹bower依賴包管理工具,感興趣的朋友一起學(xué)習(xí)2016-03-03
javascript實(shí)現(xiàn)點(diǎn)擊提交按鈕后顯示loading的方法
這篇文章主要介紹了javascript實(shí)現(xiàn)點(diǎn)擊提交按鈕后顯示loading的方法,涉及javascript動(dòng)態(tài)設(shè)置頁(yè)面元素樣式的相關(guān)技巧,需要的朋友可以參考下2015-07-07
JavaScript實(shí)現(xiàn)留言板添加刪除留言
這篇文章主要為大家詳細(xì)介紹了JavaScript實(shí)現(xiàn)留言板添加刪除留言,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-06-06
javascript實(shí)現(xiàn)圖片自動(dòng)和可控的輪播切換特效
這篇文章主要介紹了javascript實(shí)現(xiàn)圖片自動(dòng)和可控的輪播切換特效,效果非常的棒,推薦給大家,有需要的小伙伴可以參考下。2015-04-04
cookie 最近瀏覽記錄(中文escape轉(zhuǎn)碼)具體實(shí)現(xiàn)
cookie 最近瀏覽記錄(中文escape轉(zhuǎn)碼)具體實(shí)現(xiàn),需要的朋友可以參考一下2013-06-06
js純數(shù)字逐一停止顯示效果的實(shí)現(xiàn)代碼
下面小編就為大家?guī)?lái)一篇js純數(shù)字逐一停止顯示效果的實(shí)現(xiàn)代碼。小編覺(jué)得非常不錯(cuò)?,F(xiàn)在分享給大家。給大家一個(gè)參考2016-03-03
Ionic學(xué)習(xí)日記實(shí)現(xiàn)驗(yàn)證碼倒計(jì)時(shí)
本篇文章主要介紹了Ionic學(xué)習(xí)日記實(shí)現(xiàn)驗(yàn)證碼倒計(jì)時(shí),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-02-02

