WEB开发网
开发学院网页设计JavaScript JavaScript 中的函数式编程实践 阅读

JavaScript 中的函数式编程实践

 2010-06-23 00:00:00 来源:WEB开发网   
核心提示: 效果如下:图 1. 过滤之前的效果我们通过 jQuery 对包装集进行一次过滤,jQuery 的过滤函数可以使得选择出来的列表对象只保留符合条件的,JavaScript 中的函数式编程实践(10),在这个例子中,我们保留这样的 div,当且仅当这个 div 中包含一个类名为 title 的 sp

效果如下:

图 1. 过滤之前的效果
JavaScript 中的函数式编程实践

我们通过 jQuery 对包装集进行一次过滤,jQuery 的过滤函数可以使得选择出来的列表对象只保留符合条件的,在这个例子中,我们保留这样的 div,当且仅当这个 div 中包含一个类名为 title 的 span,并且这个 span 的内容为数字:

清单 19. 过滤集合

 var cons = $("div.note").hide();// 选择 note 类的 div, 并隐藏 
 cons.filter( function (){ 
 return $( this ).find("span.title").html().match(/^\d+$/); 
 }).show(); 

效果如下图所示:

图 2. 过滤之后的效果
JavaScript 中的函数式编程实践

我们再来看看 jQuery 中对数组的操作 ( 本质上来讲,JavaScript 中的数组跟 List 是很类似的 ),比如我们在前面的例子中提到的 map 函数,过滤器等:

清单 20. jQuery 对数组的函数式操作

 var mapped = $.map([1, 2, 3, 4, 5, 6, 7, 8, 9, 10], 
 function (n){ 
 return n + 1; 
 }); 
 var greped = $.grep([1, 2, 3, 4, 5, 6, 7, 8, 9, 10], 
 function (n){ 
 return n % 2 == 0; 
 }); 

mapped 将被赋值为 :

 [2, 3, 4, 5, 6, 7, 8, 9, 10, 11] 

上一页  5 6 7 8 9 10 

Tags:JavaScript 函数 编程

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接