第一章 JavaScript简介

 http://www.w3school.com.cn/js/pro_js_implement.asp

出自《JavaScript高级程序设计(第3版)》

1.1 JavaScript简史

1997年,以JavaScript 1.1为蓝本的建议被提交给了欧洲计算机制造商协会(Ecma,European Computer Manufacturers Association)。

该协会指定39号技术委员会(TC39,Technical Committee #39)负责“标准化一种通用、跨平台、供应商中立的脚本语言的语法和语义”(http://www.ecmainternational.org/memento/TC39.htm)。

TC39由来自Netscape、Sun、微软、Borland及其他关注脚本语言发展的公司的程序员组成,他们经过数月的努力完成了ECMA-262——定义一种名为ECMAScript(发音为“ek-ma-script”)的新脚本语言的标准。

1.2 JavaScript实现

尽管 ECMAScript 是一个重要的标准,但它并不是 JavaScript 唯一的部分,当然,也不是唯一被标准化的部分。实际上,一个完整的 JavaScript 实现是由以下 3 个不同部分组成的:

1.2.1 ECMAScript

ECMAScript与Web浏览器没有依赖关系。实际上,这门语言本身并不包含输入和输出定义。

我们常见的Web浏览器只是ECMAScript实现可能的宿主环境之一。

宿主环境不仅提供基本的ECMAScript实现,同时也会提供该语言的扩展,以便语言与环境之间对接交互。

而这些扩展——如DOM,则利用ECMAScript的核心类型和语法提供更多更具体的功能,以便实现针对环境的操作。

其他宿主环境包括NODE和Adobe Flash。

简单地说,ECMAScript 描述了以下内容:

  • 语法
  • 类型
  • 语句
  • 关键字
  • 保留字
  • 运算符
  • 对象

ECMAScript 仅仅是一个描述,定义了脚本语言的所有属性、方法和对象。其他语言可以实现 ECMAScript 来作为功能的基准,

JavaScript实现了ECMAScript,Adobe ActionScript同时也实现了ECMAScript。

1.2.2 DOM 文档对象模型

文档对象模型(DOM,Document Object Model)是针对XML但经过扩展用于HTML的应用程序编成接口。

DOM把整个页面映射为一个多层节点结构。

HTML或XML页面中的每个组成部分都是某种类型的节点,这些节点又包含着不同类型的数据。

1.2.3  BOM浏览器对象模型

BOM可以对浏览器窗口进行访问和操作。

使用 BOM,开发者可以移动窗口、改变状态栏中的文本以及执行其他与页面内容不直接相关的动作。

使 BOM 独树一帜且又常常令人怀疑的地方在于,它只是 JavaScript 的一个部分,没有任何相关的标准。这个问题在HTML5中得到了解决。

BOM 主要处理浏览器窗口和框架,不过通常浏览器特定的 JavaScript 扩展都被看做 BOM 的一部分。这些扩展包括:

  • 弹出新的浏览器窗口
  • 移动、关闭浏览器窗口以及调整窗口大小
  • 提供 Web 浏览器详细信息的定位对象
  • 提供用户屏幕分辨率详细信息的屏幕对象
  • 对 cookie 的支持
  • IE 扩展了 BOM,加入了 ActiveXObject 类,可以通过 JavaScript 实例化 ActiveX 对象

1.3 JavaScript版本

https://www.w3schools.com/js/js_versions.asp

原文地址:https://www.cnblogs.com/chucklu/p/9010401.html