xe-utils
Version:
JavaScript 函数库、工具类
27 lines (23 loc) • 714 B
JavaScript
var isFunction = require('./isFunction')
var eqNull = require('./eqNull')
var get = require('./get')
var arrayEach = require('./arrayEach')
function helperCreateMinMax (handle) {
return function (arr, iterate) {
if (arr && arr.length) {
var rest, itemIndex
arrayEach(arr, function (itemVal, index) {
if (iterate) {
itemVal = isFunction(iterate) ? iterate(itemVal, index, arr) : get(itemVal, iterate)
}
if (!eqNull(itemVal) && (eqNull(rest) || handle(rest, itemVal))) {
itemIndex = index
rest = itemVal
}
})
return arr[itemIndex]
}
return rest
}
}
module.exports = helperCreateMinMax