2.16 min
2.16.1 语法:
_.min(list, [iteratee], [context])
2.16.2 说明:
返回list中的最小值。
- list为集合,数组、对象、字符串或arguments
- iteratee作为返回最小值的依据
- iteratee的参数(value, key, list)
- context可以改变iteratee内部的this
2.16.3 代码示例:
示例一:从不同的集合中取出最小值
_.min([1, 2, 3]); //=> 1
_.min({a:1, b:2, c:3}); //=> 1
_.min('123'); //=> '1'
示例二:iteratee作为返回最小值的依据
var min = _.min([1, 2, 3], function(n){
return -n; //-3最小,作为最小值的依据。
});
console.log(min); //=> 3
示例三:iteratee可以为list元素的属性
var min = _.min(['aaa', 'bb', 'c'], 'length');
console.log(min); //=> 'c'
示例四:iteratee可以为list元素的key
var arr = [{name: 'iro', age : 15}, {name: 'moe', age : 20}, {name: 'kyo', age : 18}]
var min = _.min(arr, 'age');
console.log(min); //=> Object {name: "iro", age: 15}
示例五:context可以改变iteratee内部的this
var min = _.min([1, 2], function (n) {
console.log(this); //=> Object {no: 5}
return this.no - n;
}, {no : 5});
2.16.4 list的特殊情况
_.min(null); //=> Infinity
_.min(undefined); //=> Infinity
_.min(null, undefined); //=> Infinity
_.min(Infinity); //=> Infinity
_.min(true); //=> Infinity
_.min(false); //=> Infinity
_.min([]); //=> Infinity
_.min({}); //=> Infinity
_.min(1); //=> Infinity
_.min({'a': 'a'}); //=> Infinity
_.min(1, 'abc'); //=> Infinity
2.16.5 取出个位数最小的数字(坑)
var array = [11121, 2312, 5, 313119];
var result = (function(){
//写下你的代码
}(array));
console.log(result); //=> 11121