underscore之Chaining_动力节点Java学院整理


Posted in Javascript onJuly 10, 2017

还记得jQuery支持链式调用吗?

$('a').attr('target', '_blank')
   .append(' <i class="uk-icon-external-link"></i>')
   .click(function () {});

如果我们有一组操作,用underscore提供的函数,写出来像这样:

_.filter(_.map([1, 4, 9, 16, 25], Math.sqrt), x => x % 2 === 1);
// [1, 3, 5]

能不能写成链式调用?

能!

underscore提供了把对象包装成能进行链式调用的方法,就是chain()函数:

_.chain([1, 4, 9, 16, 25])
 .map(Math.sqrt)
 .filter(x => x % 2 === 1)
 .value();
// [1, 3, 5]

因为每一步返回的都是包装对象,所以最后一步的结果需要调用value()获得最终结果。

小结

通过学习underscore,是不是对JavaScript的函数式编程又有了进一步的认识?

Javascript 相关文章推荐
JavaScript Perfection kill 测试及答案
Mar 23 Javascript
通过js动态操作table(新增,删除相关列信息)
May 23 Javascript
JS跨域代码片段
Aug 30 Javascript
Javascript实现滚动图片新闻的实例代码
Nov 27 Javascript
javascript实现在指定元素中垂直水平居中
Sep 13 Javascript
JavaScript中cookie工具函数封装的示例代码
Oct 11 Javascript
js判断手机系统是android还是ios
Mar 07 Javascript
微信小程序实现图片上传功能实例(前端+PHP后端)
Jan 10 Javascript
vue实现后台管理权限系统及顶栏三级菜单显示功能
Jun 19 Javascript
javascript实现前端成语点击验证
Jun 24 Javascript
jQuery开发仿QQ版音乐播放器
Jul 10 jQuery
ant-design-vue中的select选择器,对输入值的进行筛选操作
Oct 24 Javascript
Vue 2.0的数据依赖实现原理代码简析
Jul 10 #Javascript
Vue实现virtual-dom的原理简析
Jul 10 #Javascript
Vue2路由动画效果的实现代码
Jul 10 #Javascript
深入浅析Node.js单线程模型
Jul 10 #Javascript
require.js中的define函数详解
Jul 10 #Javascript
vue.js组件之间传递数据的方法
Jul 10 #Javascript
Node.js+Express+MySql实现用户登录注册功能
Jul 10 #Javascript
You might like
php下使用curl模拟用户登陆的代码
2010/09/10 PHP
php遍历文件夹所有文件子文件夹函数代码
2013/11/27 PHP
php实现分页工具类分享
2014/01/09 PHP
zf框架的registry(注册表)使用示例
2014/03/13 PHP
注释PHP和html混合代码的小技巧(分享)
2016/11/03 PHP
jQuery.Validate 使用笔记(jQuery Validation范例 )
2010/06/25 Javascript
extjs关于treePanel+chekBox全部选中以及清空选中问题探讨
2013/04/02 Javascript
JS+CSS实现美化的下拉列表框效果
2015/08/11 Javascript
使用JQuery 加载页面时调用JS的实现方法
2016/05/30 Javascript
vuejs 单文件组件.vue 文件的使用
2017/07/28 Javascript
Vue2.2.0+新特性整理及注意事项
2018/08/22 Javascript
原生JS forEach()和map()遍历的区别、兼容写法及jQuery $.each、$.map遍历操作
2019/02/27 jQuery
angula中使用iframe点击后不执行变更检测的问题
2020/05/10 Javascript
Postman内建变量常用方法实例解析
2020/07/28 Javascript
[01:32:50]DOTA2-DPC中国联赛 正赛 DLG vs XG BO3 第一场 1月25日
2021/03/11 DOTA
Python3.0与2.X版本的区别实例分析
2014/08/25 Python
python命令行解析之parse_known_args()函数和parse_args()使用区别介绍
2018/01/24 Python
python实现淘宝秒杀聚划算抢购自动提醒源码
2020/06/23 Python
Python解析json代码实例解析
2019/11/25 Python
pycharm 设置项目的根目录教程
2020/02/12 Python
Python文字截图识别OCR工具实例解析
2020/03/05 Python
CSS3样式linear-gradient的使用实例
2017/01/16 HTML / CSS
html5 Canvas画图教程(2)—画直线与设置线条的样式如颜色/端点/交汇点
2013/01/09 HTML / CSS
解决方案设计综合面试题
2015/08/31 面试题
应届生法律求职信
2013/10/22 职场文书
员工培训邀请函
2014/01/11 职场文书
祖国在我心中演讲稿
2014/01/15 职场文书
表彰先进的通报
2014/01/31 职场文书
读书活动总结范文
2014/04/26 职场文书
设计师求职信模板
2014/05/06 职场文书
贷款承诺书范文
2014/05/19 职场文书
小学运动会口号
2014/06/07 职场文书
代办社保委托书范文
2014/10/06 职场文书
管理人员岗位职责
2015/02/14 职场文书
浅谈Python实现opencv之图片色素的数值运算和逻辑运算
2021/06/23 Python
Django对接elasticsearch实现全文检索的示例代码
2021/08/02 Python