《JavaScript面向对象编程指南》内容包括:JavaScript作为一门浏览器语言的核心思想;面向对象编程的基础知识及其在JavaScript中的运用;数据类型、操作符以及流程控制语句;函数、闭包、对象和原型等概念,以代码重用为目的的继承模式;BOM、DOM、浏览器事件、AJAX和JSON;如何实现JavaScript中缺失的面向对象特性,如对象的私有成员与私有方法;如何应用适当的编程模式,发挥JavaScript语言特有的优势;如何应用设计模式解决常见问题等。
《JavaScript面向对象编程指南》着重介绍JavaScript在面向对象方面的特性,展示如何构建强健的、可维护的、功能强大的应用程序及程序库。
第1章 引言 1
1.1 回顾历史 1
1.2 变革之风 3
1.3 分析现状 3
1.4 展望未来 4
1.5 面向对象程序设计 5
1.5.1 对象 5
1.5.2 类 6
1.5.3 封装 6
1.5.4 聚合 7
1.5.5 继承 7
1.5.6 多态 8
1.6 OOP概述 8
1.7 训练环境设置 9
1.8 使用Firebug控制台 10
1.9 本章小结 11
第2章 基本数据类型、数组、循环及条件表达式 13
2.1 变量 13
2.2 操作符 15
2.3 基本数据类型 18
2.3.1 查看类型操作符——typeof 19
2.3.2 数字 19
2.3.3 字符串 23
2.3.4 布尔值 26
2.3.5 Undefined与null 32
2.4 基本数据类型综述 34
2.5 数组 35
2.5.1 增加、更新数组元素 36
2.5.2 删除元素 36
2.5.3 数组的数组 37
2.6 条件与循环 38
2.6.1 代码块 38
2.6.2 循环 44
2.7 注释 49
2.8 本章小结 49
2.9 练习题 50
第3章 函数 52
3.1 什么是函数 53
3.1.1 调用函数 53
3.1.2 参数 53
3.2 预定义函数 55
3.2.1 parseInt() 56
3.2.2 parseFloat() 57
3.2.3 isNaN() 58
3.2.4 isFinite() 58
3.2.5 URI的编码与反编码 59
3.2.6 eval() 59
3.2.7 一点惊喜—alert()函数 60
3.3 变量的作用域 60
3.4 函数也是数据 62
3.4.1 匿名函数 63
3.4.2 回调函数 64
3.4.3 回调示例 65
3.4.4 自调函数 66
3.4.5 内部(私有)函数 67
3.4.6 返回函数的函数 68
3.4.7 能重写自己的函数 68
3.5 闭包 70
3.5.1 作用域链 70
3.5.2 词法作用域 71
3.5.3 利用闭包突破作用域链 72
3.5.4 Getter与Setter 78
3.5.5 迭代器 79
3.6 本章小结 80
3.7 练习题 80
第4章 对象 82
4.1 从数组到对象 82
4.1.1 元素、属性、方法 84
4.1.2 哈希表、关联型数组 85
4.1.3 访问对象的属性 85
4.1.4 调用对象的方法 86
4.1.5 修改属性与方法 87
4.1.6 使用this值 88
4.1.7 构造器函数 88
4.1.8 全局对象 90
4.1.9 构造器属性 91
4.1.10 instanceof操作符 92
4.1.11 返回对象的函数 92
4.1.12 传递对象 93
4.1.13 对象比较 94
4.1.14 Firebug控制台中的对象 95
4.2 内建对象 96
4.2.1 Object 97
4.2.2 Array 98
4.2.3 Function 102
4.2.4 Boolean 107
4.2.5 Number 109
4.2.6 String 110
4.2.7 Math 115
4.2.8 Date 117
4.2.9 RegExp 121
4.2.10 Error对象 127
4.3 本章小结 131
4.4 练习题 132
第5章 原型 135
5.1 原型属性 135
5.1.1 利用原型添加方法与属性 136
5.1.2 使用原型的方法与属性 137
5.1.3 自身属性与原型属性 138
5.1.4 利用自身属性重写原型属性 139
5.1.5 isPrototypeOf()方法 143
5.1.6 神秘的_proto_链接 143
5.2 扩展内建对象 145
5.2.1 关于扩展内建对象的讨论 146
5.2.2 一些原型陷阱 147
5.3 本章小结 150
5.4 练习题 150
第6章 继承 152
6.1 原型链 152
6.1.1 原型链示例 153
6.1.2 将共享属性迁移到原型中去 156
6.2 只继承于原型 158
6.3 uber—子对象访问父对象的方式 161
6.4 将继承部分封装成函数 163
6.5 属性拷贝 163
6.6 小心处理引用拷贝 165
6.7 对象之间的继承 167
6.8 深拷贝 169
6.9 object() 171
6.10 原型继承与属性拷贝的混合应用 172
6.11 多重继承 173
6.12 寄生式继承 175
6.13 构造器借用 176
6.14 本章小结 179
6.15 案例学习:图形绘制 183
6.15.1 分析 183
6.15.2 实现 184
6.15.3 测试 188
6.16 练习题 189
第7章 浏览器环境 190
7.1 在HTML页面中引入JavaScript代码 190
7.2 概述:BOM与DOM 191
7.3 BOM 192
7.3.1 window对象再探 192
7.3.2 window.navigator 193
7.3.3 Firebug的备忘功能 193
7.3.4 window.location 194
7.3.5 window.history 195
7.3.6 window.frames 196
7.3.7 window.screen 197
7.3.8 window.open()/close() 198
7.3.9 window.moveTo()、window.resizeTo() 199
7.3.10 window.alert()、window.prompt()、window.confirm() 199
7.3.11 window.setTimeout()、window.setInterval() 201
7.3.12 window.document 202
7.4 DOM 202
7.4.1 Core DOM与HTML DOM 204
7.4.2 DOM节点的访问 206
7.4.3 DOM节点的修改 215
7.4.4 新建节点 218
7.4.5 移除节点 221
7.4.6 只适用于HTML的DOM对象 223
7.5 事件 227
7.5.1 内联HTML属性法 227
7.5.2 元素属性法 227
7.5.3 DOM的事件监听器 228
7.5.4 捕捉法与冒泡法 229
7.5.5 阻断传播 231
7.5.6 防止默认行为 233
7.5.7 跨浏览器事件监听器 233
7.5.8 事件类型 235
7.6 XMLHttpRequest对象 236
7.6.1 发送请求 236
7.6.2 处理响应 237
7.6.3 在早于7的IE版本中创建XMLHttpRequest对象 238
7.6.4 A代表异步 239
7.6.5 X代表XML 240
7.6.6 实例示范 240
7.7 本章小结 242
7.8 练习题 244
第8章 编程模式与设计模式 247
8.1 编程模式 248
8.1.1 行为隔离 248
8.1.2 命名空间 250
8.1.3 初始化分支 253
8.1.4 延迟定义 254
8.1.5 配置对象 255
8.1.6 私有属性和方法 257
8.1.7 特权函数 258
8.1.8 私有函数的公有化 258
8.1.9 自执行函数 259
8.1.10 链式调用 260
8.1.11 JSON 261
8.2 设计模式 262
8.2.1 单件模式1 263
8.2.2 单件模式2 263
8.2.3 工厂模式 264
8.2.4 装饰器模式 266
8.2.5 观察者模式 269
8.3 本章小结 272
附录A 保留字 273
附录B 内建函数 276
附录C 内建对象 279
附录D 正则表达式 305
书由国内资深前端工程师撰写,是目前内容最为全面和深入的Bootstrap专著。它不仅系统讲解了Bootstrap的各项功能和使用方法,详细
《公司的演变》内容简介:这是一个互联网串联的时代。互联网在扶植原有的经济结构和企业盈利模式的同时,也在创造崭新的商业模式。
SpringIntegrationisaJava-basedenterpriseintegrationframeworkthatprovidesalightwe...
《山海经里的博物学:羽门馆》内容简介:大奇和小遇是一对热爱动物的兄妹。有一天,爸爸妈妈领着他们参观野生动物园,在一阵野鸭鸣
《中学摄影》内容简介:本教材为“中小学美术拓展教材”之一,本教材针对中学生学习特点,从摄影图像与思维、观看、呈现和传播等几
Python是目前最流行的动态脚本语言之一。本书共27章,由浅入深、全面系统地介绍了利用Python语言进行程序开发的知识和技巧,包括
《信托的未来》内容简介:全面剖析中国信托业未来发展趋势与转型方向在中国金融行业中,信托一直是一个较为特殊的存在。过去十年,
《Scala编程(第3版)》内容简介:本书由直接参与Scala开发的一线人员编写,因而对原理的解读和应用的把握更加值得信赖。本书面向具
PrototypeandScriptaculousarelibrariesthatextendstandardAjax.Theymakeiteasiertopr...
Forgetschoolmathclass,Flashmathisaboutfun.Itswhatyoudoinyoursparetime-messingaro...
《BeginningJavaObjects中文版从概念到代码(第2版)》是关于软件对象和Java的,但并不是纯粹地介绍Java语言,而是强调如何从对象模
信息通信网络是对包括电信网络、计算机网络和新一代网络等在内的各类网络的总称。本书对这些网络在系统层面上就它们的基本概念、
《法律硕士(法学)联考大纲要点解析及应试策略》内容简介:对于参加法学方向的考生而言,市场上现有辅导书,无论在试题深度还是内
《完美主义扼杀效率》内容简介:工作的目标是成果,而不是完美! 33个完美主义思维误区! 日本上班族人手一本!做出成果只需抓住20
《ASP.NET2.0技术内幕》围绕着ASP.NET2.0是Web开发的重要分水岭这一主题,采用自顶向下的方式介绍ASP.NET2.0的最新编程实践,从更
《自然语言处理实战》内容简介:本书将从一个心理模型开始告诉读者计算机是如何阅读和解释语言的;之后,读者将了解如何训练基于Py
精通JavaScrip开发 本书特色 本书是javascript实战指南,主要内容包括:javascript性能、可靠性、稳定性和代码管理分析,面向对象代码的使...
《软件工程实践者的研究方法》(原书第6版)第6版在结构和内容上均有不少调整、更新和充实。第6版更加突出了软件过程,增加了敏捷开
BeforeandAftermagazinesfocusonclarity,simplicity,andelegancehaswonitlegionsoffan...
《分配正义新论:人道与公平》内容简介:当今的分配正义理论主要是义务论的。这种义务论分配正义理论一方面或多或少受到康德伦理思