javascript按照期望的顺序给对象数组排序,中文汉字大写数字排序。这种方法也可用到sql语句中。
var arrayExpected = ['一年级', '二年级', '三年级', '四年级', '五年级', '六年级']; //期望排序后的数组
var arrayToSort = [{'Name': '二年级', "Count": 36},
{'Name': '三年级', "Count": 45},
{'Name': '五年级', "Count": 38},
{'Name': '一年级', "Count": 35},
{'Name': '四年级', "Count": 42},
{'Name': '六年级', "Count": 43}]; //待排序的数组
arrayToSort.sort(function(a, b){
var aIndex = arrayExpected.indexOf(a.Name);
var bIndex = arrayExpected.indexOf(b.Name);
return aIndex - bIndex; //比较元素在arrayExpected中出现的顺序
});
//排序后的结果即是期望的顺序