冒泡语法sort函数的封装 (升序降序排列)
首先这个函数基本js语法的实现
升序
for (var i = 0; i < arr.length; i++) {
for (var j = 0; j < arr.length - 1 - i; j++) {
if (arr[j] > arr[j + 1]) {
var temp = arr[j + 1];
arr[j + 1] = arr[j];
arr[j] = temp;
}
}
}
然后对函数进行封装,由于现在学习的是js基础阶段,所以不能用arr。sort。而是用命名函数sort,主要整理的是小白白的一种思想
function sort(arrIn, fn) {
for (var i = 0; i < arrIn.length; i++) {
for (var j = 0; j < arrIn.length - 1 - i; j++) {
// arr[j]>arr[j+1]这时候交换变量的时候是升序,arr[j+1] > arr [j]这个时候执行变量是降序
var result = fn(arr[j], arr[j + 1]);
if (result > 0) {
var temp = arrIn[j + 1];
arrIn[j + 1] = arrIn[j];
arrIn[j] = temp;
};
}
}
}
sort(arr, function (a, b) {
return a - b;
})
console.log(arr);
======================================================
forEach()方法的封装