下面是Underscore.js的一些函数的使用:
1._.reduce()利用函数将值的集合合并成一个值,该函数接收一个积累值和本次处理的值。从左到右开始合并。_.reduceRight()是从右到左开始合并。
例子:
var num=[100,2,5]; function div(x,y){ return x/y; } _.reduce(num,div);>>2 _.reduceRight(num,div);>>0.125 这就是两个函数的差异;
2._.filter()对集合每一个值调用一个谓词函数(返回true或false的函数),抽取谓词函数返回true的值的集合。_.reject()与他相反,他返回的是false的集;
例子1:
var nums=[1,2,3,4,5]; function onlyEven(num){ return _.filter(num,function(i){ return (i%2)==0; }); } onlyEven(nums); >>[2,4]
例子2:
var nums=[1,2,3,4,5]; function onlyEven(num){ return _.reject(num,function(i){ return (i%2)==0; }); } onlyEven(nums); >>[1,3,5]