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 相关文章推荐
基于Jquery的温度计动画效果
Jun 18 Javascript
将光标定位于输入框最右侧实现代码
Dec 04 Javascript
jquery 层次选择器siblings与nextAll的区别介绍
Aug 02 Javascript
js确认删除对话框效果的示例代码
Feb 20 Javascript
JavaScript中的getTimezoneOffset()方法使用详解
Jun 10 Javascript
JavaScript中的acos()方法使用详解
Jun 14 Javascript
jquery带动画效果幻灯片特效代码
Aug 27 Javascript
JS实现带有3D立体感的银灰色竖排折叠菜单代码
Oct 20 Javascript
学习Javascript面向对象编程之封装
Feb 23 Javascript
实例解析jQuery中proxy()函数的用法
May 24 Javascript
jQuey将序列化对象在前台显示地实现代码(方法总结)
Dec 13 Javascript
Vue组件中的data必须是一个function的原因浅析
Sep 03 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
如何给phpadmin一个保护
2006/10/09 PHP
php日志函数error_log用法实例分析
2019/09/23 PHP
PHP连接MySQL数据库三种实现方法
2020/12/10 PHP
JQuery中对Select的option项的添加、删除、取值
2013/08/25 Javascript
jQuery快速上手:写jQuery与直接写JS的区别详细解析
2013/08/26 Javascript
JSON无限折叠菜单编写实例
2013/12/16 Javascript
原生JavaScript+LESS实现瀑布流
2014/12/12 Javascript
jQuery使用addClass()方法给元素添加多个class样式
2015/03/26 Javascript
jQuery使用drag效果实现自由拖拽div
2015/06/11 Javascript
jQuery链式操作实例分析
2015/11/16 Javascript
浅谈js中的引用和复制(传值和传址)
2016/09/18 Javascript
用纯Node.JS弹出Windows系统消息提示框实例(MessageBox)
2017/05/17 Javascript
element-ui 时间选择器限制范围的实现(随动)
2019/01/09 Javascript
ES6知识点整理之数组解构和字符串解构的应用示例
2019/04/17 Javascript
JavaScript表格隔行变色和Tab标签页特效示例【附jQuery版】
2019/07/11 jQuery
OpenLayers3实现图层控件功能
2020/09/25 Javascript
在antd中setFieldsValue和defaultVal的用法
2020/10/29 Javascript
Python Web框架Flask中使用七牛云存储实例
2015/02/08 Python
浅谈Python 对象内存占用
2016/07/15 Python
浅谈终端直接执行py文件,不需要python命令
2017/01/23 Python
Python字符串格式化的方法(两种)
2017/09/19 Python
python3读取excel文件只提取某些行某些列的值方法
2018/07/10 Python
Python自动发送邮件的方法实例总结
2018/12/08 Python
python画柱状图--不同颜色并显示数值的方法
2018/12/13 Python
Python lxml解析HTML并用xpath获取元素的方法
2019/01/02 Python
详解Python Matplotlib解决绘图X轴值不按数组排序问题
2019/08/05 Python
python实现按首字母分类查找功能
2019/10/31 Python
法国时尚童装网站:Melijoe
2016/08/10 全球购物
Roxy俄罗斯官方网站:冲浪和滑雪板的一切
2020/06/20 全球购物
家庭教育先进个人事迹材料
2014/01/24 职场文书
留学推荐信怎么写
2014/01/25 职场文书
信息科学与技术专业求职信范文
2014/02/20 职场文书
2014最新离职证明范本
2014/09/12 职场文书
自荐信怎么写
2015/03/04 职场文书
2016年感恩母亲节活动总结
2016/04/01 职场文书
MySQL详解进行JDBC编程与增删改查方法
2022/06/16 MySQL