对如何写好JavaScript的复习 | 青训营笔记

80 阅读2分钟

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

今天看了月影老师的如何写JavaScript课程,感觉还是挺有收获的,于是css篇的复习就先鸽了,今天先把课上内容进行内化。

如何写  JavaScript

写好JS的一些原则

个人认为好的js主要是要有效率,要方便后续一系列行为,网页不是一锤子买卖,维护与跟新迭代是相当由必要的。首先各司其职这点很有必要,有条理性,方便上手。组件封装同理,正确性、扩展性、复用性等等都是为了方便使用与修改。过程抽象看上各司其责去虽然抽象了点,但本质还是和组件封装一样,方便,能提高效率。

各司其责

要求:写一段JS,控制一个网页,让它支持浅色和深色两种浏览模式
方法一: carbon (6).png 方法二: carbon (3).png 方法三: carbon (7).png 这个案列应避免不必要的由JS直接操作样式,后续改起来麻烦,可以用class来表示状态,当然这种纯展示类交互寻求零JS方案。

组件封装

看着月影老师封装了个轮播图,并一步步将其优化,这是之前没怎么接触到的,还是很有感触的。

基本方法.png 后续进行了各种重构,
解耦:将控制元素抽取成插件,插件与组件之间通过依赖注入方式建立联系;
解耦 :将HTML模板化,更易于扩展;
抽象:将组件通用模型抽象出来后续有空要好好看看,学习一下这种写法
总结.png

过程抽象

  • 用来处理局部细节控制的一些方法
  • 函数式编程思想的基础应用
    高级函数:以函数作为参数,以函数作为返回值,常用于作为函数装饰器

常用高阶函数

Once,Throttle,Debounce,Consumer/2,Iterative 这些函数都是值得学习的

编程范式

命令式与声明式,这里后续也有必要看看

范式(1).png

后续

后续又以交通灯(原始,数据抽象,过程抽象,异步+函数式),判断是否是4的幂,洗牌(错误写法,正确写法,使用生成器),分红包(切西瓜法,抽牌法)等来详细展示js的各种写代码,然后就这样收尾了。后续感觉要在这方面好好加油,要好好练一下。