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

55 阅读2分钟
这是我参与「第四届青训营 」笔记创作活动的的第4天

写好JS的一些原则

  • 各司其职

    • 让HTML、CSS和JavaScript职能分离
  • 组件封装

    • 好的UI组件具备正确性、扩展性、复用性。
  • 过程抽象

    • 应用函数式编程思想

总结就是,

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

插件化

  • 将控制元素抽取成插件
  • 插件与组件之间通过依赖注入方式建立联系

模板化

  • 将HTML模板化,更易于扩展

img

抽象

  • 将组件通用模型抽象出来

img

组件封装

  • 组件设计的原则:封装性、正确性、扩展性、复用性

  • 实现组件的步骤:结构设计、展现效果、行为设计

  • 三次重构

    1. 插件化
    2. 模板化
    3. 抽象化(组件框架)

过程抽象

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

操作次数限制

  • 一些异步交互
  • 一次性的HTTP请求

高阶函数

  • (Once)为了能够让“只执行一次“的需求覆盖不同的事件处理,我们可以将这个需求剥离出来。这个过程我们称为过程抽象
  • (HOF)

  • 以函数作为参数

  • 以函数作为返回值

  • 常用于作为函数装饰器

  • Once

  • Throttle (节流函数)

    • 控制事件触发频率
  • Debounce (防抖函数 )

    • 用来限制事件的调用、但是它不仅是限制调用的频率
  • Consumer / 2 (异步消耗)

  • Iterative (迭代函数)

img

编程范式

命令式与声明式

img

个人感觉

我真的菜,好多不理解,要补.....