/** * 比较函数 * @param {Object} param1 要比较的参数1 * @param {Object} param2 要比较的参数2 * @return {Number} 若是param1 > param2 返回 1 * 若是param1 == param2 返回 0 * 若是param1 < param2 返回 -1 */ function compareFunc(param1,param2){ //若是两个参数均为字符串类型 if(typeof param1 == "string" && typeof param2 == "string"){ return param1.localeCompare(param2); } //若是参数1为数字,参数2为字符串 if(typeof param1 == "number" && typeof param2 == "string"){ return -1; } //若是参数1为字符串,参数2为数字 if(typeof param1 == "string" && typeof param2 == "number"){ return 1; } //若是两个参数均为数字 if(typeof param1 == "number" && typeof param2 == "number"){ if(param1 > param2) return 1; if(param1 == param2) return 0; if(param1 < param2) return -1; } }
a=["我","是","睡","码"] a.sort(function(p1,p2){return p1.localeCompare(p2)})//简单的能够直接这样用,若是还有数字英文就用引用上面的方法