需求:对数组元素进行排序,每个元素是一个数字
问题及解决思路:当我们调用此方法对数组进行排序时,默认对每个元素的字符Ascll码排序,如
2,14,12 的排序结果是 12, 14, 2,有时这不符合我们的需求,我们需要的是让每个元素按自然数排序,解决方法是写一个模板函数(此函数的用法和功能与c/c++中sort的模板函数如出一辙)
示例:
var merge = function(A) {
// 模板函数
function sequence(a,b) {
if (a < b) {
return -1;
} else if (a > b) {
return 1;
} else {
return 0;
}
}
return A.sort(sequence);
};
console.log(merge([1,14,12]));