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

92 阅读1分钟

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

一、本堂课重点内容

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

二、详细知识点介绍

1、各司其职

1673968610412.png

2、组件封装
  • 组件设计的原则:封装性、正确性、扩展性、复用性
  • 实现组件的步骤:结构设计、展现效果、行为设计
  • 三次重构:1.插件化2.模板化3.抽象化(组件框架)
3、过程抽象

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

1673969006093.png

  • 常用高阶函数:Once、Throttle、Debounce、Consumer等
4、编程范式
  • 命令式编程语言:面向过程、面向对象
  • 声明式编程语言:逻辑式、函数式

三、实践练习例子

  • 深夜食堂
  • 轮播图
  • 交通灯
  • 4的幂数
  • 洗牌
  • 分红包
    命令式 let list=[1,2,3,4]; let map=[]; for(let i=0;i<list.length;i++){ mapl.push(list[i]*2); } 声明式 let list=[1,2,3,4]; const double=x=>x*2; list.map(double);

四、课后个人总结

本次课程学习到了注意到了js书写过程中要各施其职,以及组件封装的流程。在过程抽象中,了解到了纯函数等,理解了算法在前端的重要性。

五、引用参考

bytedance.feishu.cn/file/boxcnx… bytedance.feishu.cn/file/boxcnD…