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]
***一定要注意函数的大小写,否则会引起不必要的错误。
好好理解这些函数的功能,让编程越来越高效。
相关推荐
Underscore提供了80多个函数,包括常用的: map, select, invoke — 当然还有更多专业的辅助函数,如:函数绑定, JavaScript模板功能, 强类型相等测试, 等等. 在新的浏览器中, 有许多函数如果浏览器本身直接支持,将会...
Underscore.js是目前最好用的Javascript工具包,提供了100多个函数。Underscore.php是Underscore.js的PHP移植版,并且实现了部分Underscore.js中的功能! 我花了一个月的时间将Underscore.php的文档翻译为中文,开源...
《Javascript函数式编程》配套代码,适合函数式编程入门。
Underscore.js 它提供了一整套函数式编程的实用功能提供了100多个函数,包括常用的:map、filter、invoke — 当然还有更多专业的辅助函数,如:函数绑定、JavaScript 模板功能、创建快速索引、强类型相等测试等等。...
Explore the Underscore.js library by example using a test-driven development approach About This Book Understand and learn to apply functional programming principles using the built-in functions of ...
Explore the Underscore.js library by example using a test-driven development approach About This Book Understand and learn to apply functional programming principles using the built-in functions of ...
underscore.js underscore.js underscore.js
underscore.js的开发文档,需要使用的朋友们可以看看
underscore-min.js
underscore源码学习计划
Underscore 是一个 JavaScript 工具库,它提供了一整套函数式编程的实用功能,但是没有扩展任何 JavaScript 内置对象。
Underscore1.8.3 参考手册.CHM,Underscore中文教程,Underscore离线手册
underscore js工具类,underscore为集合类对象提供了一致的接口
underscore源码解析
underscore-1.6.0.zip
underscore1.5.2中文帮助,Underscore 是一个JavaScript实用库,提供了类似Prototype.js (或 Ruby)的一些功能,但是没有继承任何JavaScript内置对象。它弥补了部分jQuery没有实现的功能,同时又是Backbone.js必不可少的...
主要介绍了Underscore.js常用方法总结,本文讲解了Underscore.js概述、在node.js下安装、与集合有关的方法、与对象有关的方法、与函数相关的方法等内容,需要的朋友可以参考下
underscore-1.4.3.zip