红宝书《JavaScript高级程序设计(第5版)》学习大纲

红宝书《JavaScript高级程序设计(第5版)》学习大纲

《JavaScript高级程序设计(第5版)》是JavaScript领域的经典“红宝书”,它从基础语法讲到高级特性,还包含浏览器环境和前端工程化等内容。本书2024年12月出版,接下来数篇文章,我将用通俗易懂的方式,把书中的知识点一一详细介绍。搭配书本一起看,效果会更好。本书链接


一、JavaScript 基础核心

  1. 语言基础
  • 语法与数据类型 [1][2]
  • 变量声明(varletconst[1:1][3]
  • 操作符与流程控制(条件语句、循环)[1:2][2:1]
  • 原始值与引用值的行为差异 [4]
  1. 函数与作用域
  1. 对象与面向对象编程(OOP)
  • 对象创建与属性描述符 [1:4][3:4]
  • 构造函数与原型链 [2:4][6]
  • ES6 类语法与继承 [6:1]
  • 设计模式(工厂模式、单例模式等)[6:2]
  1. 内置对象与引用类型
  • ArrayObjectDateRegExp[5:1][3:5]
  • 集合类型(MapSetWeakMap[3:6]
  • 迭代器与生成器(Symbol.iteratoryield[7]

二、异步编程与高级特性

  1. 异步编程模型
  • 回调函数与事件循环 [8]
  • Promise 与链式调用 [8:1]
  • async/await 语法与错误处理 [8:2]
  • fetch API 与 Ajax 请求 [3:7]
  1. 高级语言特性
  • 代理与反射(ProxyReflect[9]
  • 模块化(ES Modules、CommonJS)[10]
  • 类型化数组与二进制数据 [3:8]
  1. 浏览器环境与 Web API
  • DOM 操作与事件模型(事件委托、冒泡)[2:5][3:9]
  • BOM 对象(windowlocationhistory[3:10]
  • 客户端存储(cookielocalStoragesessionStorageIndexedDB)[^3]
  1. 多线程与性能优化
  • Web Workers(专用、共享、Service Worker)[11]
  • WebAssembly 与 asm.js 高效执行 [10:1]
  • 内存泄漏分析与优化策略 [12]

三、工具链与工程化

  1. 开发工具
  • 编辑器与 IDE(VS Code、WebStorm)[10:2]
  • 调试工具(Chrome DevTools、断点调试)[10:3]
  1. 包管理与构建工具
  • 包管理器(npm、Yarn)[10:4]
  • 模块打包器(Webpack、Parcel、Rollup)[10:5]
  • Babel 与 TypeScript 转译 [10:6]
  1. 测试与质量保障
  • 单元测试框架(Jest、Mocha、QUnit)[10:7]
  • 静态代码分析(ESLint、JSHint)[10:8]
  • 持续集成(CI)配置 [10:9]
  1. 部署与优化
  • 代码压缩与混淆(Uglify、Closure Compiler)[10:10]
  • 构建自动化(Grunt、Gulp)[10:11]
  • 性能优化策略(代码拆分、缓存策略)[12:1]

四、框架与库

  1. 前端框架
  • React(组件化、虚拟 DOM)[13]
  • Vue(响应式系统、组合式 API)[13:1]
  • Angular(依赖注入、RxJS 整合)[13:2]
  1. 实用库
  • 数据可视化(D3.js、Chart.js)[13:3]
  • 动画库(Anime.js、three.js)[13:4]
  • 状态管理(RxJS、Redux)[13:5]
  1. 服务端与全栈开发
  • Node.js 基础与 API 设计
  • Express/Koa 框架开发 [13:6]
  • 实时应用(Socket.IO、Meteor)[13:7]

五、进阶主题与最佳实践

  1. 安全与防护
  • XSS/CSRF 防御策略 [12:2]
  • 内容安全策略(CSP)[12:3]
  1. 现代浏览器特性
  • Web Components(自定义元素、Shadow DOM)[13:8]
  • PWA(Service Worker、离线缓存)[13:9]
  1. 最佳实践
  • 代码规范(Google JavaScript Style Guide)[12:4]
  • 设计原则(SOLID、DRY)[12:5]
  • 文档生成(JSDoc、ESDoc)[10:12]

  1. 变量与作用域,《JavaScript高级程序设计(第5版)》 第四章 ↩︎ ↩︎ ↩︎ ↩︎ ↩︎

  2. 语言基础,《JavaScript高级程序设计(第5版)》第三章 ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎

  3. Web API 与 DOM,《JavaScript高级程序设计(第5版)》 第六章及附录 ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎

  4. 对象与编程范式,《JavaScript高级程序设计(第5版)》 第八章 ↩︎ ↩︎

  5. 引用类型,《JavaScript高级程序设计(第5版)》 第五、六章 ↩︎ ↩︎

  6. 面向对象编程,《JavaScript高级程序设计(第5版)》 第八章 ↩︎ ↩︎ ↩︎

  7. 迭代器与生成器,《JavaScript高级程序设计(第5版)》 第七章 ↩︎

  8. 异步编程,《JavaScript高级程序设计(第5版)》 第十一章 ↩︎ ↩︎ ↩︎

  9. 代理与反射,《JavaScript高级程序设计(第5版)》 第九章 ↩︎

  10. 工具链,《JavaScript高级程序设计(第5版)》附录 D ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎

  11. Web Workers,《JavaScript高级程序设计(第5版)》 第二十四章 ↩︎

  12. 最佳实践,《JavaScript高级程序设计(第5版)》 第二十五章及附录 D ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎

  13. 框架与库,《JavaScript高级程序设计(第5版)》 附录 C ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎

posted @ 2025-04-02 15:56  kovli  阅读(1597)  评论(0)    收藏  举报