DAY3 跟着月影学JavaScript | 青训营笔记

95 阅读3分钟

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

1.什么是JavaScript?

JS是一种具有(轻量级、解释性)或(即时编译型语言)的脚本语言

1.1 JS的组成

JS是由:ECMAScript、DOM、BOM组成。

  • ECMAScript:描述了该语言的语法和基本对象。
    
  • BOM(文档对象模型):处理网页内容的方法和接口。
    
  • DOM(浏览器对象模型):与浏览器进行交互的方法和接口。
    

2.写好JS的一些原则

2.1 各司其职

  • HTML/CSS/JS 各司其责  
    
  • 应当避免不必要的由 JS 直接操作样式
    
  • 可以用 class 来表示状态
    
  • 纯展示类交互寻求零 JS 方案
    

image.png

2.2 封装组件

2.2.1 组件设计的原则:

  • 封装性、正确性、扩展性、复用性
    

2.2.2 组件封装基本方法和步骤:

  • 结构设计、展现效果、行为设计(API(功能)、Event(控制流))
    

2.2.3 三次重构

1.  插件化-将控制元素抽取成插件、插件与组件之间通过依赖注入方式建立联系。
2.  模板化-将HTML模板化,更易于kuoz。
3.  抽象化(组件框架)-将组件通用模型抽象出来。

2.3 过程抽象

  • 为了能够让只执行一次的需求覆盖不同的事件处理,我们可以将这个需求剥离出来。这个过程我们称为过程抽象。
  • 特点:
     用来处理局部细节控制的一些方法
    
     函数式编程思想的基础应用
    

image.png

3.高阶函数

3.1 什么是高阶函数?

  • 高阶函数式对其他函数进行操作的函数,它接收函数作为参数或将函数作为返回值输出。
  • 特点:
     以函数作为参数
    
     以函数作为返回值
    
     常用于作为函数装饰器
    

3.2 常用的高阶函数

-   Once:是一个简单执行一次的函数,无视后来产生的多次执行请求。
-   Throttle:一个函数持续地、频繁地触发,那么让它在一定时间间隔后再触发。
-   Debounce:一个函数持续地触发,那么只在它结束后过一段时间只执行一次
-   Consumer:每隔一段时间才会去调用函数,但是会根据用户需求次数执行到底。
-   lterative:可迭代方法,它会返回新的函数,在新的函数中并进行判断,如果可迭代,则迭代的调用新函数里的方法,如果不可迭代,只执行一次。

4.编程范式

编程范式有三种:命令式、声明式和函数式。

4.1 命令式

命令式编程:是关注计算机执行的步骤,即一步一步告诉计算机先做什么再做什么。

4.2 声明式

声明式编程:是以数据结构的形式来表达程序执行的逻辑。即告诉计算机应该做什么,但不指定具体要怎么做

4.3 函数式

函数式编程:以函数为第一位,即函数可以出现在任何地方,可以把函数作为参数传递给另一个函数,即关注做什么而不是怎么做。