underscore常用函数的功能

    underscore是javascript的一个实用库,提供了一整套函数式编程的实用功能,它提供了100多个函数,使用underscore函数可精简代码。

   下面我们就一起来看看使用这些函数能达到什么效果吧!

    一,_.each:便利list中的所有元素,按顺序便利输出每一个元素

_.each([1, 2, 3], alert);实现的效果是1,2,3按顺序输出来
_.each({one: 1, two: 2, three: 3}, alert);实现的效果是1,2,3按顺序输出来

   他的用法跟foreach差不多:

    _.each在函数中的用法:

_.each(list,function(value){
      alert value
})

   foreach在函数中的用法:

list.forEach(function(value){
    alert value;
})//value是参数和_,each中的value一样都是list中的元素

 二,_.filter:遍历list中的每个值,返回的是满足条件的元素值。

var new arr=_filter([1, 2, 3, 4, 5, 6], function(num){ return num % 2 == 0; });
//定义一个新数组满足条件的元素存入数组结果是 [2, 4, 6],return的是满足num % 2 == 0的num

 三,_.countBy:是用来统计元素的数量的,得到的是一个包含 键是元素值是数量的哈希表

_.countBy([1, 2,1,3,5,3 3, 4, 5], function(num) {
    })
结果是{1:2,2:1,3:3,4:1,5:2}//统计了每个元素的数量放在了哈希表中

 四:_.indexOf:是用来索引的,如果满足索引它返回的是满足索引条件的位置,如果不满足则返回的就是-1

_.indexOf([1, 2, 3, 4], 2);
//  它返回的就是2的位置
_.indexOf([1, 2, 3, 4], 5);
// 没有5所以它返回的就是-1

五:_.map:map的意思是映射,这个函数所起的作用是对数组里面的元素进行一定的操作,或者是对哈希表中的值进行一定的操作,它返回的是一个数组。对不满足条件的它返回的是undefined。

   下面举例子来看一下:

_.map([1,2,3,2,4],function(num){
    return num * 2;
})
他的结果是[2, 4, 6, 4, 8],对每一个参数都进行了操作。

 

_.map({one: 1, two: 2, three: 3}, function(num, key){ return num * 3; });
// 它的结果是[3, 6, 9]
_.map([1,2,3,4,2,3],function(num){
   if(num==2)
   {
     return num;
   }
})
//结果是[undefined, 2, undefined, undefined, 2, undefined]

   ***一定要注意函数的大小写,否则会引起不必要的错误。

    好好理解这些函数的功能,让编程越来越高效。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值