《JavaScript高级程序设计(第5版)》学习大纲
《JavaScript高级程序设计(第5版)》学习大纲
《JavaScript高级程序设计(第5版)》是JavaScript领域的经典“红宝书”,它从基础语法讲到高级特性,还包含浏览器环境和前端工程化等内容。本书2024年12月出版,接下来数篇文章,我将用通俗易懂的方式,把书中的知识点一一详细介绍。搭配书本一起看,效果会更好。本书链接
一、JavaScript 基础核心
-
语言基础
- 语法与数据类型 12
- 变量声明(
var
、let
、const
)13 - 操作符与流程控制(条件语句、循环)12
- 原始值与引用值的行为差异 4
-
函数与作用域
- 函数声明与表达式 23
- 作用域链与闭包 45
this
绑定与强制类型转换(Coercion)13- 箭头函数与高阶函数 23
-
对象与面向对象编程(OOP)
- 对象创建与属性描述符 13
- 构造函数与原型链 26
- ES6 类语法与继承 6
- 设计模式(工厂模式、单例模式等)6
-
内置对象与引用类型
Array
、Object
、Date
、RegExp
等 53- 集合类型(
Map
、Set
、WeakMap
)3 - 迭代器与生成器(
Symbol.iterator
、yield
)7
二、异步编程与高级特性
-
异步编程模型
- 回调函数与事件循环 8
Promise
与链式调用 8async/await
语法与错误处理 8fetch
API 与 Ajax 请求 3
-
高级语言特性
- 代理与反射(
Proxy
、Reflect
)9 - 模块化(ES Modules、CommonJS)10
- 类型化数组与二进制数据 3
- 代理与反射(
-
浏览器环境与 Web API
- DOM 操作与事件模型(事件委托、冒泡)23
- BOM 对象(
window
、location
、history
)3 - 客户端存储(
cookie
、localStorage
、sessionStorage
、IndexedDB
)[^3]
-
多线程与性能优化
- Web Workers(专用、共享、Service Worker)11
- WebAssembly 与
asm.js
高效执行 10 - 内存泄漏分析与优化策略 12
三、工具链与工程化
-
开发工具
- 编辑器与 IDE(VS Code、WebStorm)10
- 调试工具(Chrome DevTools、断点调试)10
-
包管理与构建工具
- 包管理器(npm、Yarn)10
- 模块打包器(Webpack、Parcel、Rollup)10
- Babel 与 TypeScript 转译 10
-
测试与质量保障
- 单元测试框架(Jest、Mocha、QUnit)10
- 静态代码分析(ESLint、JSHint)10
- 持续集成(CI)配置 10
-
部署与优化
- 代码压缩与混淆(Uglify、Closure Compiler)10
- 构建自动化(Grunt、Gulp)10
- 性能优化策略(代码拆分、缓存策略)12
四、框架与库
-
前端框架
- React(组件化、虚拟 DOM)13
- Vue(响应式系统、组合式 API)13
- Angular(依赖注入、RxJS 整合)13
-
实用库
- 数据可视化(D3.js、Chart.js)13
- 动画库(Anime.js、three.js)13
- 状态管理(RxJS、Redux)13
-
服务端与全栈开发
- Node.js 基础与 API 设计
- Express/Koa 框架开发 13
- 实时应用(Socket.IO、Meteor)13
五、进阶主题与最佳实践
-
安全与防护
- XSS/CSRF 防御策略 12
- 内容安全策略(CSP)12
-
现代浏览器特性
- Web Components(自定义元素、Shadow DOM)13
- PWA(Service Worker、离线缓存)13
-
最佳实践
- 代码规范(Google JavaScript Style Guide)12
- 设计原则(SOLID、DRY)12
- 文档生成(JSDoc、ESDoc)10
下篇文章:第一讲:JavaScript 语法与数据类型详解
变量与作用域,《JavaScript高级程序设计(第5版)》 第四章 ↩︎ ↩︎ ↩︎ ↩︎ ↩︎
语言基础,《JavaScript高级程序设计(第5版)》第三章 ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎
Web API 与 DOM,《JavaScript高级程序设计(第5版)》 第六章及附录 ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎
对象与编程范式,《JavaScript高级程序设计(第5版)》 第八章 ↩︎ ↩︎
引用类型,《JavaScript高级程序设计(第5版)》 第五、六章 ↩︎ ↩︎
面向对象编程,《JavaScript高级程序设计(第5版)》 第八章 ↩︎ ↩︎ ↩︎
迭代器与生成器,《JavaScript高级程序设计(第5版)》 第七章 ↩︎
异步编程,《JavaScript高级程序设计(第5版)》 第十一章 ↩︎ ↩︎ ↩︎
代理与反射,《JavaScript高级程序设计(第5版)》 第九章 ↩︎
工具链,《JavaScript高级程序设计(第5版)》附录 D ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎
Web Workers,《JavaScript高级程序设计(第5版)》 第二十四章 ↩︎
最佳实践,《JavaScript高级程序设计(第5版)》 第二十五章及附录 D ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎
框架与库,《JavaScript高级程序设计(第5版)》 附录 C ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎