前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【视频】- 5分钟学习<函数式编程>

【视频】- 5分钟学习<函数式编程>

作者头像
web前端教室
发布2018-02-07 14:49:43
6440
发布2018-02-07 14:49:43
举报

温馨提示:视频请点此观看

// 视频文字版:

JavaScript 函数式编程是一个存在了很久的话题,

现在ES6语法对于函数式编程更为友好,所以开始变的更加火热。

函数式编程可以理解为,以函数作为主要载体的编程方式,用函数去拆解、抽象一般的表达式,好处主要有以下几点:

1、语义更加清晰

2、可复用性更高

3、可维护性更好

4、作用域不会污染命名空间

现在来看一个基本的函数式编程,目标是把每个单词的首字母变为大写,

从上面的例子可以看出,函数式编程的特征,

1、每个函数只做一件事;

2、每个函数只接收一个参数;

3、每个函数只返回一个结果;

好处是,结果是可预期的,且易于调试;

坏处是,很容易出现横向的多层嵌套。

就像下面这样,

//计算1,2,3,4相加之和

当然了,一般不会这样写,这只是极端表现。但客观上来看,函数式编程确实有可能出现这种情况。

上述情况的优化,可以采用“链式调用”来解决,

这样改写后,结构会整体变得比较清晰,而且链式调用的每一环在做什么也可以很容易的展现出来。

但随着项目的进行,代码量的增加,业务的复杂度不断上升,各种回调的存在 ,会使代码的嵌套层数不断增加。

这时更好的办法,就是Promise的链式结构,看下面这个例子,

它能够做到在代码高度复杂的情况下,依然保持代码层次的清晰,就像这样的。

扩展阅读:

大白话 Promise,这到底是干啥用的?

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2017-12-31,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 web前端教室 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1、每个函数只做一件事;
  • 2、每个函数只接收一个参数;
  • 3、每个函数只返回一个结果;
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档