本书关注面向对象的原理和ES5对象新特性,目的是帮助那些已经熟知面向对象编程的读者掌握这些概念是如何在JavaScript中工作的。
本书内容简洁而精妙。全书共6章,分别深入探讨了原始类型和引用类型、函数、对象、构造函数和原型对象、继承和对象模式等主题和特性。在本书中,你将学到JavaScript独特的面向对象的编程方式;抛弃类的概念和基于类的继承,学习基于原型的继承和构造函数。你将学会如何创建对象、定义自己的类型、使用继承以及其他各种操作来充分使用对象。总而言之,你将学到JavaScript语言并进行专业编程所需熟知的一切。
本书适合熟悉面向对象编程的概念并希望将其应用于JavaScript的开发者阅读,也适合JavaScript新手学习参考。
......(更多)
Nicholas C. Zakas是Box公司的一位软件工程师。他因JavaScript最佳实践的写作和演讲而知名。在此之前,作为Yahoo!主页的资深前端工程师,他在雅虎工作了5年。他写了数本著名的JavaScript技术图书,包括《编写可维护的JavaScript》、《JavaScript高级程序设计》等。
......(更多)
第1章 原始类型和引用类型 1
1.1 什么是类型 2
1.2 原始类型 3
1.2.1 鉴别原始类型 4
1.2.2 原始方法 6
1.3 引用类型 6
1.3.1 创建对象 6
1.3.2 对象引用解除 7
1.3.3 添加删除属性 8
1.4 内建类型实例化 8
1.4.1 字面形式 9
1.4.2 对象和数组字面形式 9
1.4.3 函数字面形式 10
1.4.4 正则表达式字面形式 11
1.5 访问属性 11
1.6 鉴别引用类型 12
1.7 鉴别数组 13
1.8 原始封装类型 14
1.9 总结 16
第2章 函数 17
2.1 声明还是表达式 18
2.2 函数就是值 19
2.3 参数 21
2.4 重载 23
2.5 对象方法 24
2.5.1 this对象 25
2.5.2 改变this 26
2.6 总结 29
第3章 理解对象 31
3.1 定义属性 32
3.2 属性探测 33
3.3 删除属性 35
3.4 属性枚举 36
3.5 属性类型 37
3.6 属性特征 38
3.6.1 通用特征 39
3.6.2 数据属性特征 40
3.6.3 访问器属性特征 41
3.6.4 定义多重属性 43
3.6.5 获取属性特征 44
3.7 禁止修改对象 45
3.7.1 禁止扩展 45
3.7.2 对象封印 45
3.7.3 对象冻结 47
3.8 总结 48
第4章 构造函数和原型对象 49
4.1 构造函数 49
4.2 原型对象 53
4.2.1 [[Prototype]]属性 54
4.2.2 在构造函数中使用原型对象 57
4.2.3 改变原型对象 60
4.2.4 内建对象的原型对象 62
4.3 总结 63
第5章 继承 65
5.1 原型对象链和Object.prototype 65
5.1.1 继承自Object.prototype的方法 66
5.1.2 修改Object.prototype 68
5.2 对象继承 69
5.3 构造函数继承 72
5.4 构造函数窃取 75
5.5 访问父类方法 77
5.6 总结 78
第6章 对象模式 79
6.1 私有成员和特权成员 80
6.1.1 模块模式 80
6.1.2 构造函数的私有成员 82
6.2 混入 84
6.3 作用域安全的构造函数 90
6.4 总结 92
索引 93
......(更多)