Javascript:一种编程语言的全面解析

发表时间: 2024-03-05 08:19

学习目标,了解Javascript起源:从哪里来,如何发展,现况。

内容涉及Javascript与ECMAScript的关系、DOM、BOM、以及Ecma和W3C相关的标准。

历史回顾

1995年,网景公司一名叫BrendanEich的工程师为NetscapeNavigator2开发的叫Mocha(后来改名为LiveScript)的脚本语言(它在服务器上叫做LiveWire)。

为赶上进度,Netscape与Sun公司合作开发LiveScript并最终改名为JavaScript(为搭上当时Java热潮的顺风车)。

1997年JavaScript1.1作为提案提交给欧洲计算机制造商协会(Ecma),由第39技术委员会(T39)承担了标准化JavaScript的任务(参见T39-ECMAScript),他们花了数月时间打造出ECMA-262,也就是ECMAScript这个新的脚本语言标准。

1998年,国际标准化组织(ISO)和国际电工委员会(IEC)也将ECMAScript采纳为标准。

从此之后各家浏览器厂商都将ECMAScript作为自己JavaScript实现依据,虽然各家都有各自的不同。

JavaScript的实现

完整的JavaScript不限于ECMA-262所定义的那样。它的结构包含如下:

核心(ECMAScript):

它只是一准脚本语言的规范标准,本身并不局限于Web浏览器。

ECMA-262定义了语言的:语法、类型、语句、关键字、保留字、操作符和全局对象,它甚至没有规定语言的输入输出。

和JavaScript一样Adobe ActionScript同样也实现了ECMAScript.

ECMAScript版本

2019年,ECMAScript发展到第10版。


文档对象模型(DOM)

是一个应用编程接口(API),用于在HTML中使用扩展的XML。

DOM将整个页面抽象为一组分层节点。HTML或XML页面的每个组成部分都是一种节点,包含不同的数据。

DOM通过创建表示文档的树,让开发者可以随心所欲地控制王爷的内容和结构。使用DOPMAPI 可以删除、添加、替换、修改节点。

为保持Web的跨平台性W3C开始了指定DOM标准的进程。

浏览器对象模型(BOM)

使用BOM,开发者可以操控浏览器显示页面之外的部分。

BOM的问题在于他没有制定相关标准,而HTML5补足了这一点,它以正是规范的形式涵盖了尽可能多的BOM特性。

BOM主要针对浏览器窗口和子窗口(frame),人们把任何浏览器的扩展都归在BOM的范畴。