写好JavaScript | 青训营笔记

96 阅读2分钟

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

本笔记对应的是第三课:跟着月影学JavaScript。

1 课程内容概括

本节课主要介绍了如何写好JavaScript,属于JS的进阶课程。

2 写好JS的原则

各司其责、组件封装、过程抽象。

各司其责:JS负责行为,CSS负责表现,HTML负责内容结构。

3 深夜食堂示例

深夜食堂示例的需求是通过JS控制网页的深色、浅色主题切换功能,课上提供了三种版本,得出结论:HTML、CSS、JS应该各司其责,对于不必要的JS对样式的操作,应该尽量避免,可以使用class表示状态,纯展示类的交互可以寻求零JS的方案。

4 轮播图案例

通过结构设计、展现效果、行为设计(API功能、Event控制流)形成组件封装的基本方法,还可以通过插件化的方式完成重构,将控制元素抽出,形成插件,插件和组件之间通过依赖注入方式建立联系,实现解耦。

将HTML模板化,可以加强扩展性。

将通用组件模型抽象,可以提高抽象程度。

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

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

该案例中,共完成了三次重构:插件化、模板化、抽象化。

5 编程范式

过程抽象、HOF、装饰器;

命令式、声明式

6 写代码需要关注的

风格、效率、约定、使用场景、设计 —— 以Left-pad事件为例

7 JS代码质量优化实战

结合本笔记前述内容,通过三个代码实践:红绿灯、洗牌、分红包来完成JS代码质量的优化。

8 总结与思考

JS相比于HTML、CSS的前端技术栈,难度更大,重要性更强,而JS语言本身的灵活性使得要写好JS,需要更多的实战与挑战。本节课默认已经对JS有一定的了解,因此存在一定的学习难度,可能需要在应用中反复观看,在实战应用中体会本节课所涉及的如何写好JS的关键点,从而提升学习效果。