比较函数应该具有两个参数 a 和 b,其返回值如下:若 a 小于 b,即 a - b < 0 ,则返回一个小于零的值,数组将按照升序排列。那么 a 会被排列到 b 之前;若 a 等于 b,则返回 0。a 和 b 的相对位置不变若 a 大于 b, 即 a - b > 0 ,则返回一个大于零的值,数组将按照降序排列。 b 会被排列到 a 之前。function sortDescFn(obj1, obj2) { var val1 = parseFloat(obj1[’num’]) var val2 = parseFloat(obj2[’num’]) if (val1 < val2) {// 如果前一项小于后一项 a<b,返回一个大于零的值,b会被排在a之前,就是降序 return 1 } else if (val1 > val2) { return -1 } else { return 0 }}let arr =[ {num:123,age:18}, {num:3,age:1}, {num:40,age:122}, {num:12,age:4}, {num:200,age:90}, {num:17,age:24}, {num:1,age:31}]console.log(arr.sort(sortDescFn));// 比较函数应该具有两个参数 a 和 b,其返回值如下:// 若 a 小于 b,即 a - b < 0 ,则返回一个小于零的值,数组将按照升序排列。那么 a 会被排列到 b 之前;//// 若 a 等于 b,则返回 0。a 和 b 的相对位置不变//// 若 a 大于 b, 即 a - b > 0 ,则返回一个大于零的值,数组将按照降序排列。 b 会被排列到 a 之前。