这是我参与第五届青训营伴学笔记创作活动的第3天。
1.# 写好 JS 的一些原则
- 各司其职
- 组件封装
- 过程抽象 2.什么是组件 组件是由 Web 页面抽离出来的一个个单元,该单元包含模板(HTML)、功能(JS)和样式(CSS)。 好的组件应具备封装性、正确性、扩展性、复用性。
代码示例 使用原生 JS 怎么实现组件化轮播图?
版本一 JS Bin 不具备复用性、数据抽象 结构设计 展现效果 行为设计 API(功能) Event(控制流) 插件化 JS Bin 不具备数据抽象 将控制元素抽取为插件 插件与组件之间通过依赖注入方式建立联系 模板化 JS Bin 将 HTML 模板化,更易于扩展 抽象化 JS Bin 将通用的组件模型抽象出来 待优化:CSS 模板化、插件组件化;
4.- 组件设计的原则: 封装性、正确性、扩展性、复用性;
- 实现组件的步骤: 结构设计、展现效果、行为设计;
- 三次重构: 插件化、模板化、抽象化(组件框架)。
- 高阶函数是什么
依据于上面过程抽象的思想,目前我们以它为衍生的还有高阶函数。
所谓高阶函数,即以函数作为参数或以函数作为返回值的一种函数。还有另外一种情况是,如果你既以函数作为参数,又以函数作为返回值,那么这种类型的称之为函数装饰器。
下面我们来看一些常见的高阶函数。
- Once一次函数:只执行一次的函数。
- Throttle节流:将频繁执行变为每隔一段时间执行一次。
- Denounce防抖:将频繁执行变为最后一次执行。
- Consumer:用来消费数据。(Consumer补充)
- Iterative:迭代器。