首页>参考读物>计算机科学与技术>综合

JavaScript权威指南(原书第6版)
作者 : (美)David Flanagan 著
译者 : 淘宝前端团队 译
出版日期 : 2012-04-12
ISBN : 978-7-111-37661-3
定价 : 139.00元
扩展资源下载
扩展信息
语种 : 简体中文
页数 : 1019
开本 : 16
原书名 : JavaScript:The Definitive Guide,Sixth Edition
原出版社: OReilly Media, Inc.
属性分类: 店面
包含CD :
绝版 : 未绝版
图书简介

本书要讲述的内容涵盖JavaScript语言本身,以及Web浏览器所实现的JavaScript API。本书第6版涵盖了 HTML5 和 ECMAScript 5,很多章节完全重写,增加了当今 Web 开发的最佳实践的内容,新增的章节包括 jQuery 、服务器端 JavaScript、图形编程以及 JavaScript 式的面向对象。本书不仅适合初学者系统学习,也适合有经验的 JavaScript 开发者随手翻阅。

图书特色

JavaScript权威指南
本书是程序员学习核心JavaScript语言和由Web浏览器定义的JavaScript API的指南和综合参考手册。
第6版涵盖HTML5和ECMAScript 5。很多章节完全重写,以便与时俱进,紧跟当今的最佳Web开发实践。本书新增章节描述了jQuery和服务器端JavaScript。 本书适合那些希望学习Web编程语言的初、中级程序员和希望精通JavaScript的程序员阅读。
David Flanagan的其他作品包括《JavaScript Pocket Reference》、《The Ruby Programming Language》以及《Java in a Nutshell》。



经典权威的JavaScript工具书
从1996年以来,本书已经成为JavaScript程序员心中的《圣经》。该书已经印刷了50多万册,Web开发人员对它如是评价:
“本书是JavaScript程序员的必备参考.内容组织得很好,而且非常详细。 ”
—— Brendan Eich,
JavaScript之父,Mozilla CTO
“我从本书学到的内容直接影响到我的职业生涯。”
——Andrew Hedges,Tapulous公司游戏工程师
“本书教会了我JavaScript。”
 ——Tom Robinson,
280 North的创始人,Cappuccion的合作创始人
“通过阅读本书,我能全面地掌握JavaScript这门语言,本书让我受益匪浅。”
——J. Chris Anderson,
CouchBase的创始人,Apache CouchDB委员会成员,
《CouchDB:The Definitive Guide》一书的作者
“如果让我来推荐一本学习JavaScript的最佳书籍,我一定会推荐本书。”
——Rey Bango,
微软客户端Web社区项目主管和jQuery团队成员

图书前言

本书要讲述的内容涵盖JavaScript语言本身,以及Web浏览器所实现的JavaScript API。本书更适合有一定编程经验的人阅读。对于那些希望学习JavaScript和已经开始使用JavaScript的程序员来说,如果想让自己对JavaScript语言和Web平台的理解和掌握再上一个台阶,本书最适合不过了。本书旨在系统权威地讲解JavaScript这门语言以及运行它的各种平台环境。本书对各个知识点的讲解都非常详细,以至于本书成了大块头。我希望每个读者都能认真阅读本书,这会让你的JavaScript编程基本功更加夯实,你所花费的时间和精力终究会有成倍的回报。
  本书分为4部分,第一部分主要讲述JavaScript这门语言。第二部分主要讲述客户端JavaScript:HTML5和相关标准定义的JavaScript API以及Web浏览器实现的API。第三部分是JavaScript语言核心部分的参考手册。第四部分是客户端JavaScript的参考手册。第1章包含前两部分的章节提纲和简介(参照1.1节)。
本书第6版同时涵盖ECMAScript 5(JavaScript语言核心的最新版本)和HTML5(Web平台的最新版本)。第一部分包含ECMAScript 5相关的资料。而与HTML5相关的新资料主要在第二部分末尾的章节讲述,当然其他章节也有提到。第6版新增的章节有:第11章、第12章、第19章以及第22章。
如果你阅读过前几版,则会发现第6版中很多章节都完全重写了。第一部分中的核心章节都涵盖全新的内容(对象、数组、函数以及类),这些内容都是当下最前沿的编程技术和最佳实践。同样,第二部分的核心章节,比如第15章和第17章,也与时俱进全都重写了。
关于盗版
如果你(或你的雇主)没有为阅读本书电子版付费(或者从其他的付费读者那里借阅本书),那么你的行为很可能涉及侵权。撰写本书第6版是我的全职工作,花费了我一年多时间。我能得到的所有报酬均来自读者的购买费用。如果第6版的撰写为我带来的收益无法继续支撑我的工作,我将无法完成本书第7版的编撰。
尽管盗版行为让人不可容忍,但如果你手上已经有了一本盗版书,不妨试着读一读你感兴趣的几章。相信你会发觉本书的价值所在,它的确是你学习JavaScript不可多得的好教材——内容安排清晰、质量上乘,这绝不是随便从网上拿来几篇文章拼凑成的二流读物。如果你能认识到这是一套非常不错的学习材料的话,请你从正当途径购买此书(电子版或纸质书)。反过来讲,如果你的确觉得本书没有网上的免费信息有价值,那么请停止你的侵权行为,去使用互联网上的免费信息。
本书约定
本书使用下列排版约定:
斜体(Italic)
用于强调重点或者表示术语的首次使用,此外它还用来表示电子邮件地址、网址和文件名。
等宽字体(Constant width)
所有的JavaScript代码、HTML和CSS代码清单都使用等宽字体表示,以及程序设计时要输入的任何内容也用等宽字体表示。
等宽斜体(Constant width italic)
等宽斜体用来表示函数参数名或者表示一个占位符,占位符常用来替换成程序中的实际值。
示例代码
本书中的所有示例代码都可以在网上找到。可以从O扲eilly出版社网站给出的本书的分类页面中找到想要的代码:
http://oreilly.com/catalog/9780596805531/
这里的代码是为了帮助你更好地理解本书的内容的。通常,可以在程序或文档中使用本书中的代码,而不需要联系O扲eilly获得许可,除非需要大段大段地复制代码。例如,使用本书中所提供的几个代码片段来编写一个程序不需要得到我们的许可。但销售或发布O扲eilly的配套CD-ROM则需要O扲eilly出版社的许可。引用本书的示例代码来回答一个问题也不需要许可;将本书中的示例代码的很大一部分放入到自己的产品文档中确实需要获得许可。
非常欢迎读者使用本书中的代码,不用注明出处。注明出处的形式包含标题、作者、出版社和ISBN,例如:“JavaScript: The Definitive Guide, by David Flanagan(O扲eilly)。Copyright 2011 David Flanagan,978-0-596-80552-4”。
关于O扲eilly的代码重用许可政策的更多规定,可以参阅:http://oreilly.com/pub/a/oreilly/ask_tim/2001/codepolicy.html。如果读者觉得对示例代码的使用超出了上面所给出的许可范围,欢迎通过permission@oreilly.com联系我们。
勘误表以及如何联系我们
出版社会维护本书的一个勘误表。你可以查阅这个勘误表,同样你也可以将自己发现的问题提交给我们,通过访问本书的网站:
http://oreilly.com/catalog/9780596805531
如果你想评论或提问关于本书的技术问题,请用这个邮件和我们联系:
bookquestions@oreilly.com
关于书籍、研讨会、资源中心以及O扲eilly的官方网址的更多信息,请访问这个地址:
http://www.oreilly.com
我们在Facebook上的地址是:http://facebook.com/oreilly
我们在Twitter上的地址是:http://twitter.com/oreillymedia
我们在YouTube上的地址是:http://www.youtube.com/oreillymedia
致谢
在写本书的过程中得到了很多人的热情帮助。感谢本书的编辑Mike Loukides,他协助我规划了本书,提出的很多建设性的意见。同样感谢本书的技术审校者:Zachary Kessin,他负责审校了本书第一部分,以及Raffaele Cecco,他审校了第19章以及第21章的相关的内容。O扲eilly生产部门的工作同样出色。Dan Fauxsmith作为本书的项目负责人非常尽责,有效的保证了本书的进度,Teresa Elsey的排版工作同样出色,Rob Romano为本书绘制了很多插图和图表,最后Ellen Troutman Zaig为本书创建了索引。
这是一个信息时代,本书的所有技术细节都能在互联网上找到渊源,我也和广大网友保持了密切的联系。我在ES5、w3c以及whatwg邮件列表中提了很多技术问题,也得到了同仁们很专业的回答,在此我非常感谢他们。同样非常感谢那些在网上分享JavaScript知识的人们。很抱歉我没办法列出所有人的名字,JavaScript开发者社区非常活跃,将自己投身其中让人感觉非常忘我、身心愉悦。
编辑、审校者以及本书的之前几版的贡献者包括:Andrew Schulman、Angelo Sirigos、Aristotle Pagaltzis、Brendan Eich、Christian Heilmann、Dan Shafer、Dave C. Mitchell、Deb Cameron、Douglas Crockford、Dr.Tankred Hirschmann、Dylan Schiemann、Frank Willison、Geoff Stearns、Herman Venter、Jay Hodges、Jeff Yates、 Joseph Kesselman、Ken Cooper、Larry Sullivan、 Lynn Rollins、 Neil Berkman、 Nick Thompson、 Norris Boyd、 Paula Ferguson、 Peter-Paul Koch、Philippe Le Hegaret、 Richard Yaker、 Sanders Kleinfeld、 Scott Furman、 Scott Issacs、Shon Katzenberger、 Terry Allen、 Todd Ditchendorf、 Vidur Apparao以及Waldemar Horwat。
为了完成本书,我经常加班到深夜,在此我要感谢我的家人对我的理解和鼓励,我爱他们。
——David Flanagan (davidflanagan.com), 2011年4月

上架指导

计算机\程序设计

封底文字

JavaScript权威指南
本书是程序员学习核心JavaScript语言和由Web浏览器定义的JavaScript API的指南和综合参考。
第6版涵盖HTML5和ECMAScript 5。很多章节完全重写,以便跟得上当今的最佳Web开发实践。该版本的新增章节描述了jQuery和服务器端JavaScript。
对于那些希望学习Web编程语言的有经验的程序员和希望精通JavaScript的当前JavaScript程序员,本书最适合不过了。

最权威的JavaScript工具书
从1996年以来,本书已经成为 JavaScript 程序员的《圣经》。该书已经印刷了50多万册,Web开发人员对它如是评价:
“本书是 JavaScript 程序员的必备参考……内容组织得很好,而且非常详细。 ”
—— Brendan Eich,JavaScript之父,Mozilla CTO
“我从本书学到的内容直接影响到我的职业生涯。”
——Andrew Hedes,Tapulous
“本书教会了我JavaScript。”
 ——Tom Robinson,280North的创始人,Cappuccion的合作创始人
“通过阅读本书,我能全面的把握JavaScript这门语言,本书让我受益匪浅。”
——J. Chris Anderson,CouchBase的创始人,Apache CouchDB委员会成员,《CouchDB:The Definitive Gude》一书的作者
“如果让我来推荐一本学习JavaScript的最佳书籍,我一定会推荐本书。”
——Rey Bango,微软客户端Web社区项目主管和jQuery团队成员

作者简介

(美)David Flanagan 著:暂无简介

译者简介

淘宝前端团队 译:暂无简介

译者序

从1996年以来,《JavaScript权威指南》已经成为JavaScript程序员公认的《圣经》。该书凭借着完整的内容、细致的讲解以及大量针对性的示例而受到读者的一贯好评,十多年来一直畅销不衰。JavaScript之父Brendan Eich对它如是评价:“本书是JavaScript程序员的必备参考……内容组织得很好,而且非常详细。”
  作为JavaScript最经典的工具书,它的历次改版见证了Web发展的历程与深刻变革:从玩具式的“轻脚本”到革命性的 Ajax,从传统的桌面系统到新潮的手持终端,从风靡一时的类库到现在主流当道的 Web 富应用开发,从纯浏览器脚本语言到面向服务器端的 JavaScript……HTML5、CSS3、jQuery和NodeJS等新技术的出现进一步丰富了Web前端开发的内涵,而本书第6次改版则是一场及时雨,系统翔实地收录了五年来前端技术的这些变革,并提供了大量的实例,可以边学边用,同时秉承了前几版的“学术气质”,是JavaScript和前端开发领域不可多得的佳作。
  本书第6版涵盖了HTML5和ECMAScript 5,很多章节完全重写,增加了当今Web开发的最佳实践的内容,新增的章节包括jQuery 、服务器端JavaScript、图形编程以及JavaScript式的面向对象。本书第6版不仅适合初学者系统学习,而且适合有经验的JavaScript开发者随手翻阅。
  淘宝前端团队非常荣幸地承担这本大厚书的翻译任务。本书书名为《JavaScript权威指南(第6版)》,我们作为译者深知自己知识面有限,难达到“权威”的高度,所以翻译过程难免疏漏。但不管怎样,这项任务是一种荣誉,更是一种责任。本次翻译共有7位译者,李晶(拔赤)、张散集(一舟)、吴英杰(季札)、赵静(澄净)、陈成(云谦)、王保平(玉伯)和鄢学鹍(三七)。感谢赵泽欣(小马)为促成本次翻译做出的努力。此外为了保证翻译质量,我们还邀请了热心网友来参与部分章节的校对,尤其是杨明明、孙博、朱琦三位读者为本书关键章节提出了中肯的修改意见,非常感谢他们。最后要特别感谢机械工业出版社华章分社的陈冀康老师和谢晓芳编辑,不仅容忍我们再三推迟交稿,还不断鼓励我们“多花些时间来保证质量”。在此对上述各位同学和老师致以深深的感谢。
淘宝前端团队

图书目录

前言 1
第1章 JavaScript概述 5
1.1 JavaScript语言核心 8
1.2 客户端JavaScript 12
第一部分 JavaScript 语言核心
第2章 词法结构 25
2.1 字符集 25
2.2 注释 27
2.3 直接量 27
2.4 标识符和保留字 28
2.5 可选的分号 30
第3章 类型、值和变量 32
3.1 数字 34
3.2 文本 38
3.3 布尔值 43
3.4 null和undefined 44
3.5 全局对象 45
3.6 包装对象 46
3.7 不可变的原始值和可变的对象引用 47
3.8 类型转换 48
3.9 变量声明 55
3.10 变量作用域 56
第4章 表达式和运算符 60
4.1 原始表达式 60
4.2 对象和数组的初始化表达式 61
4.3 函数定义表达式 62
4.4 属性访问表达式 63
4.5 调用表达式 64
4.6 对象创建表达式 64
4.7 运算符概述 65
4.8 算术表达式 69
4.9 关系表达式 74
4.10 逻辑表达式 79
4.11 赋值表达式 81
4.12 表达式计算 83
4.13 其他运算符 86
第5章 语句 91
5.1 表达式语句 92
5.2 复合语句和空语句 92
5.3 声明语句 94
5.4 条件语句 96
5.5 循环 101
5.6 跳转 106
5.7 其他语句类型 113
5.8 JavaScript语句小结 116
第6章 对象 118
6.1 创建对象 120
6.2 属性的查询和设置 123
6.3 删除属性 127
6.4 检测属性 128
6.5 枚举属性 130
6.6 属性getter和setter 132
6.7 属性的特性 134
6.8 对象的三个属性 138
6.9 序列化对象 141
6.10 对象方法 142
第7章 数组 144
7.1 创建数组 144
7.2 数组元素的读和写 145
7.3 稀疏数组 147
7.4 数组长度 148
7.5 数组元素的添加和删除 149
7.6 数组遍历 149
7.7 多维数组 151
7.8 数组方法 152
7.9 ECMAScript 5中的数组方法 156
7.10 数组类型 160
7.11 类数组对象 161
7.12 作为数组的字符串 163
第8章 函数 165
8.1 函数定义 166
8.2 函数调用 168
8.3 函数的实参和形参 173
8.4 作为值的函数 178
8.5 作为命名空间的函数 181
8.6 闭包 182
8.7 函数属性、方法和构造函数 188
8.8 函数式编程 194
第9章 类和模块 201
9.1 类和原型 202
9.2 类和构造函数 203
9.3 JavaScript中Java式的类继承 207
9.4 类的扩充 210
9.5 类和类型 212
9.6 JavaScript中的面向对象技术 217
9.7 子类 230
9.8 ECMAScript 5 中的类 239
9.9 模块 248
第10章 正则表达式的模式匹配 253
10.1 正则表达式的定义 253
10.2 用于模式匹配的String方法 261
10.3 RegExp对象 263
第11章 JavaScript的子集和扩展 267
11.1 JavaScript的子集 268
11.2 常量和局部变量 271
11.3 解构赋值 274
11.4 迭代 276
11.5 函数简写 285
11.6 多catch 从句 285
11.7 E4X: ECMAScript for XML 286
第12章 服务器端JavaScript 290
12.1 用Rhino脚本化Java 291
12.2 用Node实现异步I/O 297
第二部分 客户端JavaScript
第13章 Web浏览器中的JavaScript 309
13.1 客户端JavaScript 309
13.2 在HTML里嵌入JavaScript 313
13.3 JavaScript程序的执行 319
13.4 兼容性和互用性 326
13.5 可访问性 333
13.6 安全性 334
13.7 客户端框架 339
第14章 Window对象 341
14.1 计时器 342
14.2 浏览器定位和导航 343
14.3 浏览历史 345
14.4 浏览器和屏幕信息 346
14.5 对话框 348
14.6 错误处理 351
14.7 作为Window对象属性的文档元素 351
14.8 多窗口和窗体 353
第15章 脚本化文档 361
15.1 DOM概览 362
15.2 选取文档元素 364
15.3 文档结构和遍历 371
15.4 属性 375
15.5 元素的内容 378
15.6 创建、插入和删除节点 382
15.7 例子:生成目录表 387
15.8 文档和元素的几何形状和滚动 389
15.9 HTML表单 396
15.10 其他文档特性 404
第16章 脚本化CSS 410
16.1 CSS概览 411
16.2 重要的CSS属性 416
16.3 脚本化内联样式 427
16.4 查询计算出的样式 431
16.5 脚本化CSS类 433
16.6 脚本化样式表 436
第17章 事件处理 440
17.1 事件类型 442
17.2 注册事件处理程序 451
17.3 事件处理程序的调用 454
17.4 文档加载事件 459
17.5 鼠标事件 461
17.6 鼠标滚轮事件 465
17.7 拖放事件 468
17.8 文本事件 475
17.9 键盘事件 478
第18章 脚本化HTTP 484
18.1 使用XMLHttpRequest 487
18.2 借助