2.15 max 2.15.1 語法: _.max(list, [iteratee], [context]) 2.15.2 說明: 返回list中的最小值。 list為集合,數組、對象、字元串或arguments iteratee作為返回最大值的依據 iteratee的參數(value, key,
2.15 max
2.15.1 語法:
_.max(list, [iteratee], [context])
2.15.2 說明:
返回list中的最小值。
- list為集合,數組、對象、字元串或arguments
- iteratee作為返回最大值的依據
- iteratee的參數(value, key, list)
- context可以改變iteratee內部的this
2.15.3 代碼示例:
示例一:從不同的集合中取出最大值
_.max([1, 2, 3]); //=> 3
_.max({a:1, b:2, c:3}); //=> 3
_.max('123'); //=> '3'
示例二:iteratee作為返回最大值的依據
var max = _.max([1, 2, 3], function(n){
return -n; //-1最大,作為最大值的依據。
});
console.log(max); //=> 1
示例三:iteratee可以為list元素的屬性
var max = _.max(['aaa', 'bb', 'c'], 'length');
console.log(max); //=> 'aaa'
示例四:iteratee可以為list元素的key
var arr = [{name: 'iro', age : 15}, {name: 'moe', age : 20}, {name: 'kyo', age : 18}]
var max = _.max(arr, 'age');
console.log(max); //=> Object {name: "moe", age: 20}
示例五:context可以改變iteratee內部的this
var max = _.max([1, 2], function (n) {
console.log(this); //=> Object {no: 5}
return this.no - n;
}, {no : 5});
2.15.4 list的特殊情況
_.max(null); //=> -Infinity
_.max(undefined); //=> -Infinity
_.max(null, undefined); //=> -Infinity
_.max(Infinity); //=> -Infinity
_.max(true); //=> -Infinity
_.max(false); //=> -Infinity
_.max([]); //=> -Infinity
_.max({}); //=> -Infinity
_.max(1); //=> -Infinity
_.max({'a': 'a'}); //=> -Infinity
_.max(1, 'abc'); //=> -Infinity