作者zzpop (給我極品其餘免談)
看板Ajax
標題[問題] javascript 中文排序問題
時間Tue Jun 26 00:59:27 2012
各位大大晚安
最近在利用javascript練習排序
但是中文排序卻不正確
上網查了一些資料
發現可以使用
array.sort(function(a,b){return a.localeCompare(b)});
這個方式
實際上套用發現還是無法正確的排序
不知道哪裡出了問題
再麻煩各位大大給些建議
非常感謝了 T_T
我的程式碼如下:
<script src="jquery-1.7.1.min.js"></script>
<script>
$(function(){
var array = ['二','四','一','三','我','哈','王','嘿','a','f','b'];
array.sort(function(a,b){return a.localeCompare(b)});
for(var i=0; i<array.length; i++){
$("body").append(array[i]+",");
}
});
</script>
排序出來變成:
a,b,f,一,三,二,哈,嘿,四,我,王,
--
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.127.180.41
1F:推 musie:是依照編碼去排..所以這樣排可能是對的 06/26 09:11
2F:→ saluyi:中文的排序本來就是這樣 06/26 10:18
3F:→ elliot79313:原PO希望怎麼排呢? 06/26 10:45
4F:→ edward13:中文筆畫排序吧?之前是用MSSQL的功能解決的..用js 難喔 06/26 11:15
5F:→ kerash:用urlencode來看,一 => %E4%B8%80 , 二 => %E4%BA%8C 06/26 11:30
6F:→ kerash:三 => %E4%B8%89 , 這樣要排就會變一,三,二 .. 06/26 11:30
7F:→ zzpop:謝謝各位大大的解答,我之前用樓上大大的方式 06/26 14:57
8F:→ zzpop:排出來跟總筆畫的順序有差異,看起來JS沒辦法順利解決了 06/26 14:58
9F:→ zzpop:還是很感謝大大們~ ^^ 06/26 14:58