JavaScript 编码原则之过程抽象 | 青训营笔记

88 阅读2分钟

这是我参与「第五届青训营 」笔记创作活动的第5天

一、本堂课重点内容:

  • 过程抽象概念
  • 高阶函数使用模式
  • JavaScript 编程范式

二、详细知识点介绍:

1、过程抽象概念

  • 用来处理局部细节控制的一些方法
  • 函数式编程思想的基础应用

image.png

其中过程抽象也可以用一句话总结为:“为了能够让“只执行一次”的需求覆盖不同的事件处理,我们可以将这个需求剥离出来,这个过程我们称为过程抽象”

image.png

实现过程抽象可以用高阶函数来实现,例如下方的例子:

function once(fn){
    returry function(...args){
      if(fn) {
           const ret = fn.apply(this, args);
           fn = null;
           return ret;}
           }
           }

所以接下来就开始进行高阶函数的介绍啦!!!

2、高阶函数使用模式

高阶函数是:

  • 以函数作为参数
  • 以函数作为返回值
  • 常用于作为函数装饰器

image.png

那么我们为什么要使用高阶函数呢?

因为高阶函数实际上是纯函数,而纯函数的传入和输出值是一定的,所以在测试时就非常方便,而且具有模块化的思想,可以做到随拿随用,并且还有一定地维护性,以至于后期的维护不会很繁琐,不知道从何改起。

3、JavaScript 编程范式

编程范式主要分为 命令式和声明式

image.png

  • 命令式 命令式的编程范式就是比较强调怎么做,会把实现的过程清清楚楚地写出来 image.png

  • 声明式 声明式的编程范式会比命令式的要简洁些,这里面就用到了一些高阶函数将经常要用到的操作封装成一个高阶函数,在要用到的时候就要简单很多 image.png