[JavaScript|青训营笔记]

44 阅读1分钟

这是我参与「第五届青训营 」伴学笔记创作活动的第 3 天。今天学习了有关JavaScript的内容,介绍了编写JS的一些原则。这对于尚处于入门阶段的我,有些内容显得略有些难,因为JavaScript是前端的行为部分,因此也会相对无聊一些。

如何写好JS

  • 各司其职
  • 组件封装
  • 过程抽象

各司其职

以深夜食堂网页制作为例得出以下结论

微信图片_20230117133601.png

组件封装

组件是指web页面上抽出来的一个个包含模板(HTML)、功能(JS)和样式(CSS)的单元。

原则

封装性、正确性、拓展性、复用性

实现步骤

以轮番图为例解释了组件封装的基本步骤

结构设计

微信图片_20230117140554.png

展现效果

微信图片_20230117140558.png

行为设计

  • API(功能) 微信图片_20230117140821.png
  • Event(控制流)

微信图片_20230117140932.png

重构

插件化:

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

模板化:

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

抽象化:

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

过程抽象

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

HOF

  •   以函数为参数
    
  •   以函数作为返回值
    
  •   常用于作为函数装饰器
    
  • Once (为了能够让只执行一次的需求覆盖不同的事件处理,我们可以将这个需求剥离出来,这个过程我们称为过程抽象)
  • Throttle
  • Debounce
  • Consumer/2
  • Iterative

编程范式

  • 命令式
  • 声明式

image.png

个人总结

感觉今天学的有关JS的内容较为复杂,仍需消化与深入,对今日所学知识应当进行适当复习与巩固,跟上学习节奏。