标签
内容简介
本书是《JavaScript面向对象编程指南》的第2版,由Stoyan Stefanov与Kumar Chetan Sharma合著,人民邮电出版社2015年出版(原书为Packt Publishing出版的Object-Oriented JavaScript第二版)。全书共8章、4个附录,围绕JavaScript这门基于原型、表达力极强的面向对象程序设计语言展开。 开篇从JavaScript的发展历史与浏览器环境的演进讲起,用OOP的基本概念(对象、类、封装、聚合、继承、多态)为读者搭建认知框架,并介绍调试环境与控制台的用法。随后系统讲解变量、操作符、基本数据类型、数组、循环与条件表达式等基础语法;进而深入函数这一核心主题,涵盖参数、预定义函数、作用域与闭包、getter/setter、迭代器等内容。第4章从数组过渡到对象,讲清元素、属性、方法、this、构造器函数、全局对象、instanceof,并逐一梳理Object、Array、Function、String、Math、Date、RegExp、Error等内建对象。 第5章、第6章是全书重心:原型属性、自身属性与原型属性之辨、__proto__链接、扩展内建对象及其陷阱,以及原型链、uber访问父对象、属性拷贝与深拷贝、多重继承、寄生式继承、构造器借用等继承模式,并以一个图形绘制案例组织分析、实现与测试全过程。第7章进入浏览器环境,覆盖BOM、DOM访问与修改、表单、事件捕获与冒泡、跨浏览器事件处理与XMLHttpRequest。第8章讨论编码模式与设计模式,包括命名空间、初始化分支、惰性定义、配置对象、私有与特权方法、即时函数、模块、链式调用、JSON,以及单例、工厂、装饰者、观察者等模式。附录提供保留字、内建函数、内建对象与正则表达式速查。每章末尾配有小结与练习题,不需要读者具备JavaScript基础。
编辑推荐
市面上讲JavaScript语法和框架的书很多,专门把“面向对象”这条线索讲透的却少见,这本第2版正是其中被反复推荐的一本。它的难得之处在于不预设读者有任何JavaScript经验:从浏览器战争讲到ECMAScript演进,从基本类型讲到函数、闭包,再把对象、原型、继承一层层剥开,读者可以沿着一条完整的路径,理解JS这种基于原型而非类的语言究竟如何组织代码。 第二版加入了Kumar Chetan Sharma,修订与补充了原型链、属性拷贝、深拷贝、多重继承、寄生式继承、构造器借用等继承方案,并用图形绘制案例把分析、实现、测试串起来,让抽象概念落到可运行的代码上。作者Stoyan Stefanov是《JavaScript模式》的作者,第8章对命名空间、模块、私有成员、链式调用以及单例、工厂、装饰者、观察者等模式的讲解,也是由语法走向工程实践的一步。附录的保留字、内建函数、内建对象速查便于日常翻阅,每章末尾的练习题则方便读者自测。适合希望打牢语言根基、而不是只学框架用法的人作为案头书。
适合谁读
适合
- 完全没有JavaScript基础、想系统入门的学习者
- 做过一些前端页面、但说不清原型与继承的开发人员
- 准备前端面试、需要梳理JS核心概念的求职者
- 想理解设计模式如何在JS中落地的工程师
不适合
- 已有多年JS经验、只想要进阶框架或工程化内容的老手
- 期待覆盖ES6以后新特性、React/Vue等现代技术的读者
- 只想查找现成代码片段、不愿动手练习的读者
阅读建议
- 第1至3章是基础,建议边读边在浏览器控制台敲示例代码,把书上的结论自己验证一遍。
- 第5章原型和第6章继承是全书难点,可以配合作者的《JavaScript模式》对照阅读,并动手实现一遍各种继承写法。
- 每章末尾的练习题不要跳过,做完再对照答案,能有效检验对闭包、this、原型链的理解。
- 书中代码风格与语法带有时代印记,阅读时可对照现代JS手册,留意哪些写法如今已不推荐。
出版社简介
人民邮电出版社
中国 · 成立于 1953 年
人民邮电出版社以科技、计算机与信息通信类图书见长,并由此延伸至摄影、艺术、软件学习与励志成长等门类,形成较为多元的出版方向。库内图书既涵盖《重构与模式(修订版)》《华为交换机学习指南(第二版)》等计算机与通信技术读物,也收录《小王子(中英法彩绘典藏纪念版)》《了不起的盖茨比》《假如给我三天光明》等双语典藏类作品;《北京十年:1980-1990》与《鬼刀 WLOP个人插画作品集》则体现其在摄影与艺术领域的布局。作者资源包括安东尼·圣埃克苏佩里、海伦·凯勒、Joshua Kerievsky、王达、张兆增与WLOP等。
目录
- 第1章 面向对象的JavaScript
- 第2章 基本数据类型、数组、循环及条件表达式
- 第3章 函数
- 第4章 对象
- 第5章 原型
- 第6章 继承
- 第7章 浏览器环境
- 第8章 编程模式与设计模式
- 附录A 保留字
- 附录B 内建函数
- 附录C 内建对象
- 附录D 正则表达式
常见问题
这本书零基础能读吗?
可以。作者明确假设读者没有任何JavaScript知识和项目经验,前三章从变量、数据类型、数组、循环讲起,并介绍控制台调试环境的设置,循序渐进进入函数、对象和原型。
第2版和第1版有什么区别?
第1版2013年由凌杰翻译,约310页;第2版增加了Kumar Chetan Sharma合著,由陆禹淳、凌杰翻译,篇幅扩充至352页、约45.9万字,补充了继承方案、编码模式与设计模式等内容。
书里的内容是否已经过时?
核心概念如原型链、闭包、this、继承模式并不会过时,是最有价值的部分;而浏览器兼容、旧版IE事件处理、部分语法风格则带有时代痕迹,建议配合现代文档阅读。
附录部分值得单独看吗?
值得。附录A至D分别整理保留字、内建函数、内建对象与正则表达式,把散落在各章的知识点集中成速查表,日常编码查阅很方便。
读者评论
查询本书
本站为索引目录:「全网查询」由您发起、在您的浏览器中运行,所列入口均指向第三方站点,请自行判断可用性。