外观
《你不知道的 JavaScript》读后感
约 1138 字
《你不知道的 JavaScript》读后感
Kyle Simpson 的这套书(上中下三卷)是 JS 圈的「辟邪剑谱」—— 专门练那些「天天用但从没细看」的基本功。断断续续读完, 说说每卷的真实含金量和阅读建议。
一、上卷:作用域与闭包、this 与对象原型
含金量:五颗星。每个 JS 开发者都该读。
作用域与闭包
这本小册子治了我多年的「好像懂了」:
- 作用域是词法的:写代码时就定好了,跟谁调用无关。 这一句把「闭包为什么能访问外层变量」讲通了;
var的提升是「声明+赋值都提升」,let/const只提升声明 —— 所以有 TDZ;- 闭包的本质:函数「记得」自己出生的作用域。
配合本站的事件循环(在新窗口打开)和 原型链(在新窗口打开)两篇看,那层窗户纸就薄了。
this 与对象原型
this 四条规则(默认绑定、隐式、显式、new)+ 优先级。 我现在的判断口诀还是从这学的:看调用点,. 前面是谁。 原型链那章把「new 干了什么」拆成三步,读完再没人能 用「class 是语法糖」忽悠我 —— 糖是什么成分我都知道。
阅读建议:精读,做笔记,例子全敲一遍。 这两本册子是「面试 + 内功」双料,回报最快。
二、中卷:类型与语法、异步与性能
含金量:四星。异步部分必读,类型部分选读。
异步与性能(好)
Promise 的「信任问题」讲得很透:为什么 then 比回调优雅 (不只是缩进少了,是错误处理和组合能力的代差)。 async/await 是「生成器 + Promise」的语法糖, 这套组合拳讲清楚了,看 Babel 编译产物 都能自己读懂。
配合本站的异步实战(在新窗口打开)读,一文一册, 互相印证。
类型与语法(水)
typeof null === 'object'、0.1 + 0.2 !== 0.3 这类 「历史冷知识」翻来覆去讲,篇幅长、收获薄。 ES6 之后(BigInt、Symbol)的补充也略旧。 结论:异步篇精读,类型篇跳读,Falsy 值表那页可以拍照贴墙。
三、下卷:ES6 与未来
含金量:三星半。当参考手册,别通读。
块级作用域、解构、模块、类、Proxy、异步迭代器…… 覆盖全,但「官网文档更权威且更新」。这卷的价值是 「一个主题串起所有 ES6 相关细节」—— 通勤时读 「代理与反射」这类章节,比刷手机强。
我的用法:当「ES6 词典」,遇到模糊点 (比如 for...of 到底怎么调迭代器)翻对应章节, 五分钟解惑。
四、作者的风格:爱的人极爱
Kyle 的风格:话痨、反复强调、爱用「换句话说」把一件事讲五遍。 读惯了严谨教科书的人可能觉得啰嗦。但我这种「迟钝型读者」 反而吃这套 —— 同一个概念从五个角度碾一遍, 总有一个角度能进去。
看不惯这个风格的,替代方案:现代 JavaScript 教程(更系统)、 MDN(更简洁)。但上卷那两本册子的「打通任督二脉」效果, 目前没有替代品。
五、我的阅读路线建议
第一次(工作 1-2 年):上卷精读 → 中卷异步篇 → 工作中翻下卷
第二次(工作 3-5 年):上卷闭包/this 重读 → 中卷类型篇补漏
第三次(带团队后):拿它当「面试题库」和「给新人答疑的弹药库」别一上来三卷通读。上卷读完就能脱胎换骨, 中卷异步读完异步不再玄学。下卷放桌上,随用随查。
六、和其他 JS 书的关系
- 《JavaScript 高级程序设计》(红宝书):全面、系统, 像教科书。YDKJS 是「专题深挖」,互补;
- 《JavaScript 语言精粹》(蝴蝶书):讲「好的部分」, 一天读完,建立审美。YDKJS 讲「所有的部分」;
- 官方规范(ECMA-262): ultimate source, 但那是查论文不是读书。
组合:蝴蝶书建审美 → 红宝书建体系 → YDKJS 打通经脉。
小结
三卷总评:上卷必读(5★)、中卷异步篇必读(4★)、 下卷工具书(3.5★)。中文版翻译质量尚可, 英文原版也不难。工作前五年,这套书放在伸手可及的地方, 比追任何新框架都值。
看完有想法的,欢迎来文章区翻其他读书笔记。