/** * 根据对象数组中的某个属性值进行排序的方法 * 使用例子: array.sort(compare('number',false)) * @param property 排序的属性 * @param rev true表示升序排序,false表示降序排序 * @returns {function(*, *): number} */ export function compare(property, rev) { if (rev === undefined) { rev = 1 } else { rev = (rev) ? 1 : -1 } // rev是1表示升序,rev是-1表示降序 return function(a, b) { const value1 = a[property] const value2 = b[property] if (value1 < value2) { return rev * -1 } else if (value1 > value2) { return rev } else { return 0 } } } export function compareTimeString(property) { return function(a, b) { const value1 = a[property] const value2 = b[property] return value1 - value2 } }