項目中須要一個選擇城市名的功能,具體的數據能夠到國家統計局的網站上查,直接搜索也有不少,好比http://blog.jjonline.cn/phptech/172.html。php
數據是有了,但是漢字怎麼按照字母排序呢?html
var a = ["上海","大連","北京","拉薩","天津"]; //返回["北京", "大連", "拉薩", "上海", "天津"] a.sort(function(a,b){return a.localeCompare(b)});
用本地特定的順序來比較兩個字符串。前端
stringObject.localeCompare(target)
參數 | 描述 |
---|---|
target | 要以本地特定的順序與 stringObject 進行比較的字符串。 |
說明比較結果的數字。若是 stringObject 小於 target,則 localeCompare() 返回小於 0 的數。若是 stringObject 大於 target,則該方法返回大於 0 的數。若是兩個字符串相等,或根據本地排序規則沒有區別,該方法返回 0。json
那麼,具體到真實的 json 對象數組的處理就是:數組
var a = [ {name: 'a', phone: 1, value: "上海"}, {name: 'b', phone: 5, value: "大連"}, {name: 'd', phone: 3, value: "北京"}, {name: 'c', phone: 4, value: "拉薩"} ]; a.sort(function(a,b){ return a.value.localeCompare(b.value) });
foreach ($array as $key=>$value) { $new_array[$key] = iconv('UTF-8', 'GBK', $value); } asort($new_array); foreach ($new_array as $key=>$value) { $array[$key] = iconv('GBK', 'UTF-8', $value); }