1. JavaScript 基础
1.1 执行上下文/作用域链/闭包
1.2 this/call/apply/bind
1.3 原型/继承
1.4 Promise
async function async1() {
console.log('async1 start');
await async2();
console.log('async1 end');
}
// 相当于
async function async1() {
console.log('async1 start');
Promise.resolve(async2()).then(() => {
console.log('async1 end');
})
}
1.5 深浅拷贝
1.6 事件机制/Event Loop
这个知识点真的是重在理解,一定要理解彻底
for (const macroTask of macroTaskQueue) {
handleMacroTask();
for (const microTask of microTaskQueue) {
handleMicroTask(microTask);
}
}
1.7 函数式编程
1.8 Service Worker / PWA
1.9 Web Worker
1.10 常用方法
太多了... 总的来说就是 API 一定要熟悉...
2. CSS 基础
3. 框架(Vue 为主)
3.1 MVVM
3.2 生命周期
3.3 数据绑定
3.4 状态管理
3.5 组件通信
3.6 Virtual DOM
3.7 Diff
3.8 Vue 计算属性 VS 侦听属性
3.9 React Hooks
3.10 React Hoc/Vue mixin
3.11 Vue 和 React 有什么不同
从思想、生态、语法、数据、通信、diff等角度自己总结一下吧。
4. 工程化
4.1 Webpack
4.2 Babel
4.3 模板引擎
4.4 前端发布
4.5 weex
4.6 前端监控
5. 性能优化
5.1 打包阶段
5.2 其它优化
6. TypeScript
7. 网络
7.1 HTTP
7.2 HTTPS/HTTP2
7.3 DNS
7.4 TCP
7.5 CDN
7.6 经典题
8. 设计模式
9. 数据结构/算法
10. 安全
11. Node
12. 项目/业务
思考题,自由发挥
13. 其它
14. 面试
15. 书单
推荐一些值得看的书,基本都是我看完或者有翻过几页觉得不错但是还没时间看的书。
15.1 JavaScript
-
JavaScript 高级程序设计(高程就不多说了,第四版有英文版)
-
JavaScript 设计模式
-
你不知道的 JavaScript
-
JavaScript 语言精粹
-
高性能 JavaScript
-
Learning TypeScript 中文版
-
深入理解 ES6
-
ES6 标准入门
-
深入理解 JavaScript 特性
15.2 CSS
-
CSS 权威指南(建议看英文版)
-
精通 CSS 高级 Web 标准解决方案
-
CSS 世界(张鑫旭老师的大作,但是建议需要有一定 CSS 实践后再看)
15.3 Node
-
Node.js 实战
-
了不起的 Node.js
15.4 计算机基础
-
大话数据结构
-
图解 HTTP
-
计算机/程序是怎样跑起来的
-
学习 JavaScript 数据结构与算法
15.5 工程化/浏览器/软技能
-
前端工程化体系设计与实践
-
webpack 实战:入门、进阶与优化(了解一下 webpack 的所有会涉及到的知识点)
-
WebKit 技术内幕(讲浏览器的,挺好的)
-
重构:改善既有代码的涉及
-
码农翻身
-
程序员思维修炼
-
编码:隐匿在计算机软硬件背后的语言
-
写给大家看的设计书
-
技术之瞳:阿里巴巴技术笔试心得