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 相关文章推荐
不间断滚动JS打包类,基本可以实现所有的滚动效果,太强了
Dec 08 Javascript
基于jquery实现的上传图片及图片大小验证、图片预览效果代码
Apr 12 Javascript
体验js中splice()的强大(插入、删除或替换数组的元素)
Jan 16 Javascript
单击复制文字兼容各浏览器的完美解决方案
Jul 04 Javascript
用box固定长宽实现图片自动轮播js代码
Jun 09 Javascript
Angularjs中UI Router全攻略
Jan 29 Javascript
jQuery简易时光轴实现方法示例
Mar 13 Javascript
javascript内存分配原理实例分析
Apr 10 Javascript
解决AjaxFileupload 上传时会出现连接重置的问题
Jul 07 Javascript
利用JS判断客户端类型你应该知道的四种方法
Dec 22 Javascript
微信小程序 image组件遇到的问题
May 28 Javascript
layui输入框中只允许输入整数的实现方法
Sep 18 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下关于中英数字混排的字符串分割问题
2010/04/06 PHP
PHP实现的oracle分页函数实例
2016/01/25 PHP
PHP引用返回用法示例
2016/05/28 PHP
thinkPHP5.0框架简单配置作用域的方法
2017/03/17 PHP
PHP编程实现多维数组按照某个键值排序的方法小结【2种方法】
2017/04/27 PHP
php中的钩子理解及应用实例分析
2019/08/30 PHP
可缩放Reloaded-一个针对可缩放元素的复用组件
2007/03/10 Javascript
点击弹出层效果&amp;弹出窗口后网页背景变暗效果的实现代码
2014/02/10 Javascript
js中style.display=&quot;&quot;无效的解决方法
2014/10/30 Javascript
node.js中的console.log方法使用说明
2014/12/09 Javascript
实现高性能JavaScript之执行与加载
2016/01/30 Javascript
基于JavaScript实现图片连播和联级菜单实例代码
2017/07/28 Javascript
深入理解requireJS-实现一个简单的模块加载器
2018/01/15 Javascript
vue删除html内容的标签样式实例
2018/09/13 Javascript
JavaScript使用面向对象实现的拖拽功能详解
2019/06/12 Javascript
玩转python爬虫之URLError异常处理
2016/02/17 Python
200行自定义python异步非阻塞Web框架
2017/03/15 Python
python实现自主查询实时天气
2018/06/22 Python
python pandas时序处理相关功能详解
2019/07/03 Python
Python列表去重复项的N种方法(实例代码)
2020/05/12 Python
使用CSS3制作倾斜导航条和毛玻璃效果
2017/09/12 HTML / CSS
CSS3,线性渐变(linear-gradient)的使用总结
2017/01/09 HTML / CSS
伦敦哈德森鞋:Hudson Shoes
2018/02/06 全球购物
Michael Kors香港官网:美国奢侈品品牌
2019/12/26 全球购物
什么是数据抽象
2016/11/26 面试题
文员个人求职自荐信
2013/09/21 职场文书
生物化工专业个人自荐信
2013/09/26 职场文书
岗位竞聘演讲稿
2014/01/10 职场文书
职务任命书范本
2014/06/05 职场文书
少先队活动总结
2014/08/29 职场文书
教师个人查摆剖析材料
2014/10/14 职场文书
党员专题组织生活会发言材料
2014/10/17 职场文书
先进个人主要事迹怎么写
2015/11/04 职场文书
Canvas如何做个雪花屏版404的实现
2021/09/25 HTML / CSS
PO模式在selenium自动化测试框架的优势
2022/03/20 Python
pycharm安装深度学习pytorch的d2l包失败问题解决
2022/03/25 Python