极客时间已完结课程限时免费阅读

JavaScript 进阶实战课

开篇词 | JavaScript的进阶之路

01 | 函数式vs.面向对象:响应未知和不确定

02 | 如何通过闭包对象管理程序中状态的变化?

03 | 如何通过部分应用和柯里化让函数具象化?

04 | 如何通过组合、管道和reducer让函数抽象化?

05|map、reduce和monad如何围绕值进行操作?

06 | 如何通过模块化、异步和观察做到动态加载?

07 | 深入理解对象的私有和静态属性

08|深入理解继承、Delegation和组合

09|面向对象:通过词法作用域和调用点理解this绑定

10|JS有哪8种数据类型,你需要注意什么?

11|通过JS引擎的堆栈了解闭包原理

12|JS语义分析该用迭代还是递归?

13 | JS引擎如何实现数组的稳定排序?

14 | 通过SparkPlug深入了解调用栈

15 | 如何通过哈希查找JS对象内存地址?

16 | 为什么环形队列适合做Node数据流缓存?

17 | 如何通过链表做LRU/LFU缓存?

18 | TurboFan如何用图做JS编译优化?

19 | 通过树和图看如何在无序中找到路径和秩序

20 | 算法思想:JS中分治、贪心、回溯和动态规划

21 | 创建型:为什么说Redux可以替代单例状态管理

22|结构型:Vue.js如何通过代理实现响应式编程

23 | 结构型:通过jQuery看结构型模式

24 | 行为型:通过观察者、迭代器模式看JS异步回调

25 | 行为型:模版、策略和状态模式有什么区别?

26|特殊型:前端有哪些处理加载和渲染的特殊“模式”?

27|性能:如何理解JavaScript中的并行、并发?(上)

28|性能:如何理解JavaScript中的并行、并发?(下)

29|性能:通过Orinoco、Jank Busters看垃圾回收

30|网络:从HTTP/1到HTTP/3,你都需要了解什么?

31|安全:JS代码和程序都需要注意哪些安全问题?

32|测试(一):开发到重构中的测试

33|测试(二):功能性测试

34|测试(三):非功能性测试

35|静态类型检查:ESLint语法规则和代码风格的检查

36|Flow:通过Flow类看JS的类型检查

37|包管理和分发:通过NPM做包的管理和分发

38|编译和打包:通过Webpack、Babel做编译和打包

39|语法扩展:通过JSX来做语法扩展

40|Polyfill:通过Polyfill让浏览器提供原生支持

41|微前端:从MVC贫血模式到DDD充血模式

42|大前端:通过一云多端搭建跨PC/移动的平台应用

43|元编程:通过Proxies和Reflect赋能元编程

结束语|JavaScript的未来之路:源于一个以终为始的初心

期末测验|来赴一场100分之约!