标签
内容简介
编辑推荐
书中对虚拟DOM、响应式系统、组件化、路由等核心概念进行了原理级的拆解与再造,引导读者从“使用者”转变为“设计者”。这种视角的转换至关重要,它培养的是一种构建复杂系统底层的抽象能力与架构思维,而非停留在API调用层面。新版内容紧跟技术演进,增补了对于现代前端工程体系、TypeScript集成以及跨端框架设计的探讨,使得这本经典著作在当下依然具有极强的时效性与参考价值。
对于有志于深入前端技术腹地、期望构建自有工具库或理解技术本质的读者而言,本书提供的是一条从理解到创造的坚实路径。其内容密度高,逻辑严谨,阅读时需要一定的前置知识积累,但回报也将是系统性的认知提升。
适合谁读
适合
- 希望深入理解现代前端框架(如Vue、React)底层原理的中高级开发者
- 有意向自行设计或封装前端工具库、组件的技术架构师
- 希望建立系统性前端知识体系,从“会用”进阶到“懂原理”的学习者
- 计算机相关专业学生,希望深化对JavaScript语言及工程实践认知的读者
不适合
- 仅希望快速上手某个具体框架应用、寻找项目实战指南的纯粹初学者
- 对JavaScript基础语法尚不熟悉、缺乏实际项目编码经验的读者
阅读建议
- 建议具备ES6+语法及至少一种主流框架(Vue/React)的基础使用经验后再开始阅读
- 阅读时宜结合书中思路,尝试手动实现简化版的核心模块(如观察者模式、虚拟DOM diff),以加深理解
- 可将本书作为一本“原理词典”,在开发中遇到框架黑盒问题时针对性查阅相关章节
出版社简介
人民邮电出版社以科技、计算机与信息通信类图书见长,并由此延伸至摄影、艺术、软件学习与励志成长等门类,形成较为多元的出版方向。库内图书既涵盖《重构与模式(修订版)》《华为交换机学习指南(第二版)》等计算机与通信技术读物,也收录《小王子(中英法彩绘典藏纪念版)》《了不起的盖茨比》《假如给我三天光明》等双语典藏类作品;《北京十年:1980-1990》与《鬼刀 WLOP个人插画作品集》则体现其在摄影与艺术领域的布局。作者资源包括安东尼·圣埃克苏佩里、海伦·凯勒、Joshua Kerievsky、王达、张兆增与WLOP等。
目录
- 版权信息
- 内容提要
- 前言
- InfoQ访谈
- 第1章 种子模块
- 1.1 模块化
- 1.2 功能介绍
- 1.3 对象扩展
- 1.4 数组化
- 1.5 类型的判定
- 1.6 domReady
- 1.7 无冲突处理
- 1.8 总结
- 第2章 语言模块
- 2.1 字符串的扩展与修复
- 2.2 数组的扩展与修复
- 2.3 数值的扩展与修复
- 2.4 函数的扩展与修复
- 2.5 日期的扩展与修复
- 第3章 浏览器嗅探与特征侦测
- 3.1 浏览器判定
- 3.2 document.all趣闻
- 3.3 事件的支持侦测
- 3.4 样式的支持侦测
- 3.5 jQuery一些常用特征的含义
- 第4章 类工厂
- 4.1 JavaScript对类的支撑
- 4.2 各种类工厂的实现
- 4.3 进击的属性描述符
- 4.4 真类降临
- 第5章 选择器引擎
- 5.1 浏览器内置的寻找元素的方法
- 5.2 getElementsBySelector
- 5.3 选择器引擎涉及的知识点
- 5.4 选择器引擎涉及的通用函数
- 5.5 Sizzle引擎
- 5.6 总结
- 第6章 节点模块
- 6.1 节点的创建
- 6.2 节点的插入
- 6.3 节点的复制
- 6.4 节点的移除
- 6.5 节点的移除回调实现
- 6.6 innerHTML、innerText、outerHTML、outerText的兼容处理
- 6.7 模板容器元素
- 6.8 iframe元素
- 6.9 总结
- 第7章 数据缓存模块
- 7.1 jQuery的第1代缓存系统
- 7.2 jQuery的第2代缓存系统
- 7.3 jQuery的第3代缓存系统
- 7.4 有容量限制的缓存系统
- 7.5 本地存储系统
- 7.6 总结
- 第8章 样式模块
- 8.1 主体架构
- 8.2 样式名的修正
- 8.3 个别样式的特殊处理
- 8.4 元素的滚动条的坐标
- 8.5 总结
- 第9章 属性模块
- 9.1 元素节点的属性
- 9.2 如何区分固有属性与自定义属性
- 9.3 如何判定浏览器是否区分固有属性与自定义属性
- 9.4 IE的属性系统的3次演变
- 9.5 className的操作
- 9.6 Prototype.js的属性系统
- 9.7 jQuery的属性系统
- 9.8 avalon的属性系统
- 9.9 value的操作
- 9.10 总结
- 第10章 PC端的事件系统
- 第10章 PC端的事件系统
- 10.1 原生API简介
- 10.2 onXXX绑定方式的缺陷
- 10.3 attachEvent的缺陷
- 10.4 addEventListener的缺陷
- 10.5 handleEvent与EventListenerOptions
- 10.6 Dean Edward“大神”的addEvent.js源码分析
- 10.7 jQuery的事件系统
- 10.8 avalon2的事件系统
- 10.9 总结
- 第11章 移动端的事件系统
- 11.1 touch系事件
- 11.2 gesture系事件
- 11.3 tap系事件
- 11.4 press系事件
- 11.5 swipe系事件
- 11.6 pinch系事件
- 11.7 拖放系事件
- 11.8 rotate系事件
- 11.9 总结
- 第12章 异步模型
- 12.1 setTimeout与setInterval
- 12.2 Promise诞生前的世界
- 12.3 JSDeferred里程碑
- 12.4 jQuery Deferred宣教者
- 12.5 es6 Promise第一个标准模型
- 12.6 es6生成器过渡者
- 12.7 es7 async/await终极方案
- 12.8 总结
- 第13章 数据交互模块
- 13.1 Ajax概览
- 13.2 优雅地取得XMLHttpRequest对象
- 13.3 XMLHttpRequest对象的事件绑定与状态维护
- 13.4 发送请求与数据
- 13.5 接收数据
- 13.6 上传文件
- 13.7 jQuery.ajax
- 13.8 fetch,下一代Ajax
- 第14章 动画引擎
- 14.1 动画的原理
- 14.2 缓动公式
- 14.3 jQuery.animate
- 14.4 mass Framework基于JavaScript的动画引擎
- 14.5 requestAnimationFrame
- 14.6 CSS3 transition
- 14.7 CSS3 animation
- 14.8 mass Framework基于CSS的动画引擎
- 第15章 MVVM
- 15.1 前端模板(静态模板)
- 15.2 MVVM的动态模板
- 15.3 ViewModel
- 15.4 React与虚拟DOM
- 15.5 性能墙与复杂墙
- 第16章 组件
- 16.1 jQuery时代的组件方案
- 16.2 avalon2的组件方案
- 16.3 React的组件方案
- 16.4 前端路由
- 彩蛋
常见问题
这本书和《JavaScript高级程序设计》这类经典书籍有什么区别?
书中代码示例是基于哪个版本的JavaScript?
这本书对学习Vue 3或React 18有帮助吗?
读者评论
查询本书
本站为索引目录:「全网查询」由您发起、在您的浏览器中运行,所列入口均指向第三方站点,请自行判断可用性。
作者简介
司徒正美是国内前端开发领域的技术作者,公开资料有限,其已知代表作是《JavaScript框架设计(第2版)》。该书属于编程设计类作品,围绕JavaScript框架的设计思路与实现方法展开,面向希望深入理解前端框架底层机制的学习者与开发者。从题材上看,作者关注的是框架层面的抽象与工程实践,而非零散语法技巧的罗列,写作上偏向以设计原理带动代码实现,帮助读者建立对框架结构的整体认识。由于库内仅收录其作品一种,其生平背景、职业经历等信息暂无从查证,读者可结合该书内容了解其在JavaScript框架设计方面的技术积累与表达特点。