首页
概述
概述
版权声明:本文为原创内容,转载请声明出处。
原文地址:http://www.excelib.com/article/149/show

由来

JS最初是由网景(Netscape)公司于1995年开发的,他是一种用来给Html网页增加动态功能的脚本语言,最早使用在网景导航者浏览器上,随后微软在其Internet Explorer3.0中引入了JScript来增加网页的动态功能,不过JScriptJavaScript的语法并不统一,这就给编程带来了麻烦,199611月网景公司将JavaScript提交给ECMA(欧洲计算机制造商协会)进行标准化,最后由网景、Sun、微软和Borland公司组成的工作组制定了统一的标准——ECMA-262,脚本名称定为了ECMAScript(以下简称ES)。

ES主要定义了语言本身的特性,作为一种语言ES并不只使用在浏览器中,同时还可以使用到其他合适的场景中,比如基于ES的ActionScript可以使用到Flex中,通过Node.js还可以使用到服务端。

创始人

JS的创始人叫布兰登·艾奇(Brendan Eich),这是一位非常传奇的人物,他于19954月被网景(Netscape)公司录用,同年5月用了10天时间就将JavaScript设计了出来!

当时的大环境是这样的,1994年网景公司发布了Navigator(导航者)浏览器0.9版,这是一款很经典的浏览器,曾经轰动一时,网景公司也因此名声大震。不过Navigator0.9并不具备跟用户交互的能力,只能完成页面内容的展示,这就成了Navigator0.9美中不足的地方,为了弥补这一缺陷,当时有两种解决方案,第一种是采用现有的脚本语言,比如PerlPythonTclScheme等,第二种是自己发明一个新的脚本语言,网景公司的高层对这两种方案产生了严重的分歧,他们争论不休,很难决断。

就在这一年(1995年)Sun公司将Oak语言改名为Java并正式推向市场,而且Sun还推出了自己的浏览器:HotJava,这款浏览器可以将Java作为脚本嵌入到网页中实现跟用户的交互,也就是大家熟知的Java Applet。当时网景公司就跟Sun公司结成联盟,也在自己的Navigator浏览器中实现了相应的功能,不过后来他们发现这种方式过于复杂,所以就想开发一种跟Java语言类似,不过使用起来更加简单的语言,而这项任务就交给了新录用的布兰登·艾奇,他当时34岁。

布兰登·艾奇的主要方向和兴趣是函数式编程,他对Java并不感兴趣,不过为了完成任务,他用了10天时间就完成了新脚本的设计,当然其中也包含很多不严谨的地方,无论如何,大名鼎鼎的JavaScript就这么诞生了。


对于布兰登·艾奇个人来说除了是JavaScript的创建者之外还有两件事情广为人知。

在2008Proposition 8(加州8号提案)曾经轰动一时这份提案的内容是反对同性恋婚姻,当时招到了很多美国人的反对,他们的依据是美国式的“自由”,不过也还有很多的支持者,他们双方为了各自的立场展开了拉票大战,据说这次拉票的规模仅次于美国总统大选的拉票!而且这次事件还拍成了电影《8号提案》。当时布兰登·艾奇曾经向8号提案及其支持者进行了捐款,这是非常不被美国IT界所认可的一种行为,甚至将其视为异类。

20143月底布兰登·艾奇出任了网景的后身MozillaCEO(原来是CTO),大名鼎鼎的FireFox(火狐浏览器)就是Mozilla的产品。不过布兰登·艾奇在仅仅出任10日后就被迫辞职,而且反对的主要理由竟然是因为他支持过8号提案!

无论如何布兰登·艾奇对IT界做出的贡献是有目共睹的。另外,学生认为真正自由应该是《论语》里面的“随心所欲不逾矩”,而不是对自己的放纵。

结构

我们这里所说的JS主要指的是使用在浏览器上完成动态网页功能的脚本语言,他主要三个部分内容:ECMAScriptDOMBOMECMAScript定义了基础的语法结构,DOMDocument Object Model,文档对象模型)定义了文档对象的结构及其操作方法,BOMBrowser Object Mode,浏览器对象模型)提供了和浏览器交互的接口。