JavaScript核心概念及实践 - (EPUB全文下载)
文件大小:0.25 mb。
文件格式:epub 格式。
书籍内容:
JavaScript核心概念及实践
第1章 概述
第2章 基本概念
第3章 对象
第4章 函数
第5章 数组
第6章 正则表达式
第7章 闭包
第8章 面向对象的JavaScript
第9章 函数式的JavaScript
第10章 核心概念深入
第11章 客户端的JavaScript
第12章 客户端的MVC框架:Backbone.js
第13章 JavaScript测试
第14章 JavaScript引擎
第15章 Java应用中的JavaScript
第16章 服务器端的JavaScript
附录A 一些JavaScript技巧
附录B 前端JavaScript框架:jQuery
版权
第1章 概述
1.1 JavaScript简史
20世纪90年代,在早期的Web站点上,所有的网页内容都是静态的。所谓静态是指除了点击超链接外,你无法通过任何方式同页面进行交互,比如让页面元素接受事件,修改字体等。但是人们又迫切地需要一种方式来打破这个局限,于是到了1996年,网景(Netscape)公司开始研发一种新的语言Mocha,并将其嵌入到自己的浏览器Netscape中。这种语言可以通过操纵DOM(Document Object Model,文档对象模型)来修改页面,并加入了对鼠标事件的支持。Mocha 使用了 C 的语法,但是设计思想上主要从函数式语言 Scheme 那里获得了灵感。当Netscape 2发布的时候,Mocha被改名为LiveScript,当时可能是想让LiveScript为Web页面注入更多的活力。后来,考虑到这个脚本语言的推广,网景采取了一种宣传策略,将 LiveScript更名为JavaScript,目的是为了跟当时非常流行的面向对象语言Java发生暧昧的关系。这种策略显然颇具成效,以至于到现在很多初学者还会为JavaScript和Java的关系而感到困惑。
JavaScript取得成功了之后,确实为页面注入了活力,微软也紧接着开发自己的浏览器脚本语言,一个是基于BASIC语言的VBScript,另一个是跟JavaScript非常类似的Jscript。但是由于JavaScript已经深入人心,所以在随后的版本中,微软的IE几乎是将JavaScript作为一个标准来实现。当然,两者仍然有不兼容的地方。1996年后期,网景向欧洲计算机厂商协会(ECMA)提交了JavaScript的设计,以申请标准化,ECMA去掉了其中的一些实现,提出了ECMA-262标准,并确定JavaScript的正式名字为ECMAScript,但是JavaScript的名字已经深入人心,故本书中仍沿用JavaScript这个名字。
1.1.1 动态网页
Web 页面在刚开始的时候,是不能动态修改其内容的。要改变一个页面的内容,需要先对网站上的静态HTML文件进行修改,然后需要刷新浏览器。后来出现的JSP、ASP等服务器端语言可以为页面提供动态的内容,但是如果没有JavaScript则无法在服务器返回之后动态地在前端修改页面,也无法有诸如鼠标移上某页面元素则高亮该元素之类的效果,因此JavaScript的出现大大丰富了页面的表现,提高了用户体验。
而当Ajax流行起来之后,更多的非常绚丽的Web应用涌现了,而且呈越来越多的趋势,如Gmail,Google Map,Google Reader,Remember the milk,Facebook等优秀的Web 2.0应用,都大量使用了JavaScript以及基于JavaScript技术的Ajax。
这些优秀的Web 2.0应用提供动态的内容,客户端可以局部更新页面上的视觉元素,比如对地图的放大/缩小,新邮件到来后的提醒等。用户体验较静态页面得到了很大的提升。事实上,后期的很多应用均建立在B/S架构上,因为HTML构筑UI的成本较桌面开发低。因此基于Web的应用开始占有一定的份额,正在逐步替换C/S架构的桌面应用。
动态网页的好处在于,客户端的负载较小,只需要一个浏览器即可,主要的负担在服务器端,这就节约了客户端的开发成本。但是前端页面正在向着复杂化的方面发展,随着前端的MVC框架的发展(backbone.js,javascriptMVC等),JavaScript正在变得更加复杂,甚至在一些互联网应用中,前端代码的代码量已经和后端的代码量相当。一个典型的模型是:后台服务提供RESTFul形式的API,以提供对资源的所有操作,而前端则完全独立为一个应用程序,仅把后台程序作为数据源。
1.1.2 浏览器之战
1994年网景公司成立,并推出了自己的浏览器的免费版本Netscape,很快就占有了浏览器市场。到了 1995年,微软公司开始加入,并很快发布了自己的 Internet Explorer 1.0。在随后的几年间,网景和微软公司不停地发布新版本的浏览器,支持更多的新功能。很快,这两者的目标就不是如何做好浏览器,而是在对手擅长的方面压制对方。比如,网景的浏览器Netscape标榜速度快,IE就要开发出比网景更快的浏览器,而对自身的安全漏洞,渲染能力等方面放任自流。这样纯粹为了竞争而竞争,对广大的用户来说无疑是非常不利的事情。但是一直到1997年,网景的浏览器Netscape份额大概在72%,而IE只占到18%。
但是,IE在随后的版本IE4.0的时候开始支持W3C的标准,并且在网页的动态性方面加入了很大的支持。事实上,这时候的网景已经不敌慢慢崛起的微软帝国了,微软利用自己的操作系统Windows,在其中捆绑了IE浏览器,而且完全免费。这样,IE的市场占有率开始超过Netscape。当出现一家独大的场面之后,标准化就显得步履维艰了,开发人员开始只为IE浏览器编写代码,因为不需要在其他任何浏览器上运行,所有的网页都很可能只能在IE下运行,或者只能在IE下效果才可以得到保证。
1998年,网景的Netscape开放了源码,分散在世界各地的开发人员开始贡献代码和补丁,使得这个浏览器变得越来 ............
以上为书籍内容预览,如需阅读全文内容请下载EPUB源文件,祝您阅读愉快。
书云 Open E-Library » JavaScript核心概念及实践 - (EPUB全文下载)