书海网短评:
经典的JavaScript犀牛书!第6版特别涵盖了HTML5和ECMAScript5! 经典的JavaScript工具书,从1996年以来,本书已经成为JavaScript程序员心中的《圣经》。 程序员学习
《JavaScript权威指南(第6版)》主要讲述的内容涵盖JavaScript语言本身,以及Web浏览器所实现的JavaScriptAPI。《JavaScript权威指南(第6版)》第6版涵盖了HTML5和ECMAScript5,很多章节完全重写,新增的章节包括jQuery、服务器端JavaScript、图形编程以及JavaScript式的面向对象。《JavaScript权威指南(第6版)》不仅适合初学者系统学习,也适合有经验的JavaScript开发者随手翻阅。
DavidFlanagan,是一名程序员,也是一名作家。他在O’Reilly出版的其他畅销书还包括《JavaScriptPocketReference》、《TheRubyProgrammingLanguage》、以及《JavainaNutshell》。David毕业于麻省理工学院,获得计算机科学与工程学位。他和妻子和孩子一起生活在西雅图和温哥华之间的美国太平洋西北海岸。
1章
JavaScript概述
JavaScript是面向Web的编程语言。绝大多数现代网站都使用了JavaScript,并且所有的现代Web浏览器——基于桌面系统、游戏机、平板电脑和智能手机的浏览器——均包含了JavaScript解释器。这使得JavaScript能够称得上史上使用最广泛的编程语言。JavaScript也是前端开发工程师必须掌握的三种技能之一:描述网页内容的HTML、描述网页样式的CSS以及描述网页行为的JavaScript。《JavaScript权威指南(第6版)》能帮助你掌握JavaScript这门语言。
如果你有其他语言的编程经历,这会有助于你了解JavaScript是一门高端的、动态的、弱类型的编程语言,非常适合面向对象和函数式的编程风格。JavaScript的语法源自Java,它的一等函数(first-classfunction)来自于Scheme,它的基于原型(prototype-based)的继承来自于Self。但使用《JavaScript权威指南(第6版)》学习JavaScript不必去了解那些(Java\/Scheme\/Self)语言或熟悉那些术语。
“JavaScript”这个名字经常被误解。除了语法看起来和Java类似之外,JavaScript和Java是完全不同的两种编程语言。JavaScript早已超出了其“脚本语言”(scripting-language)本身的范畴,而成为一种集健壮性、高效性和通用性为一身的编程语言。最新的语言版本为严谨的大型软件开发定义了诸多新的特性。
JavaScript:名字和版本
JavaScript是由Web发展初期的网景(Netscape)公司创建,“JavaScript”是SunMicrosystem公司(现在的Oracle)的注册商标,用来特指网景(现在的Mozilla)对这门语言的实现。网景将这门语言作为标准提交给了ECMA——欧洲计算机制造协会——由于商标上的冲突,这门语言的标准版本改了一个丑陋的名字“ECMAScript”。同样由于商标的冲突,微软对这门语言的实现版本取了一个广为人知的名字“Jscript”。实际上,几乎所有人都将这门语言叫做“JavaScript”。《JavaScript权威指南(第6版)》也仅仅使用“ECMAScript”来指代语言标准。
在最近10年间,所有的Web浏览器都实现了第3版ECMAScript标准,我们也已经不必再去考虑版本号了:语言标准已经很稳定了,并且被几乎所有浏览器完整地实现了。最近,ECMAScript第5版定义了新的语言标准,在撰写《JavaScript权威指南(第6版)》时,浏览器已经开始实现它了。除了ECMAScript3长期保留下来的特性,《JavaScript权威指南(第6版)》还涵盖了所有ECMAScript5的新特性。正如我们经常将JavaScript简写成JS一样,ECMAScript3和ECMAScript5有时也会简写成ES3和ES5。
当我们提到这门语言本身时,通常所指的语言版本是ECMAScript3和ECMAScript5(ECMAScript4已经开发了数年,但由于太过庞大,从未发布过正式版本)。有时会看到JavaScript的版本号(比如JavaScript1.5或JavaScript1.8)。这些是Mozilla的版本号:版本1.5基本上就是ECMAScript3,后续版本包含了非标准的语言扩展(参照第11章)。最后,JavaScript解释器或者“引擎”(engine)也有版本号,比如,Google将它的JavaScript解释器叫做V8,在撰写《JavaScript权威指南(第6版)》时V8引擎最新版本是3.0。
为了有用起见,通常每一种编程语言都有各自的开发平台、标准库或API函数,用来提供诸如基本输入输出的功能。JavaScript语言核心针对文本、数组、日期和正则表达式的操作定义了很少的API,但是这些API不包括输入输出功能。输入和输出功能(类似网络、存储和图形相关的复杂特性)是由JavaScript所属的“宿主环境”(hostenviroment)提供的。这里所说的宿主环境通常是Web浏览器(第12章会介绍两个不基于Web浏览器的JavaScript宿主环境),《JavaScript权威指南(第6版)》第一部分涵盖了语言本身的特性以及少量的内置API。第二部分讲解了JavaScript如何在Web浏览器中工作,并涵盖基于浏览器的API——这部分也称做“客户端JavaScript”。
《JavaScript权威指南(第6版)》第三部分是核心API的参考手册。比如,在这部分,可以查找“Array”以获得JavaScript数组操作API的详细信息。第四部分是客户端JavaScript参考手册,比如,你可以在这部分查找“canvas”来获得HTML5元素定义的图形编程API。
《JavaScript权威指南(第6版)》首先讲解初级的基础部分,然后讲解更高级和更抽象的内容。《JavaScript权威指南(第6版)》的章节也是如此安排以便你能循序阅读。但学习一门新的编程语言绝非易事,当然要完整描述这门语言就没办法苛求知识点的循次渐进,每一种语言特性都和其他特性相互关联,《JavaScript权威指南(第6版)》的知识点也是前后参照的,有时参照的知识点在后续章节,有时在已经阅读的章节。本章快速介绍了语言核心部分和客户端API及其关键特性,以便你能更方便更深入地阅读理解后续章节。
……









