作者:-苏小澄11m | 来源:互联网 | 2022-10-15 15:12
ECMAScript是一种由Ecma国际通过ECMA-262标准化的脚本程序设计语言。这种语言在万维网上应用广泛,它往往被称为JavaScript或JScript,所以它可以理解为是JavaScript的一个标准,但实际上后两者是ECMA
(1)ECMAScript:描述了该语言的语法和基本对象。
(2)DOM:文档对象模型(DOM),描述处理网页内容的方法和接口。
(3)BOM:浏览器对象模型(BOM),描述与浏览器进行交互的方法和接口。
2.2.1 DOM 文档对象模型
文档对象模型(Document Object Model,简称DOM),是W3C组织推荐的处理可扩展标志语言的标准编程接口。在网页上,组织页面(或文档)的对象被组织在一个树形结构中,用来表示文档中对象的标准模型就称为DOM。Document Object Model的历史可以追溯至1990年代后期微软与Netscape的“浏览器大战”,双方为了在Javascript与JScript一决生死,于是大规模的赋予浏览器强大的功能。微软在网页技术上加入了不少专属事物,既有Vbscript、ActiveX、以及微软自家的DHTML格式等,使不少网页使用非微软平台及浏览器无法正常显示。DOM即是当时蕴酿出来的杰作。
2.2.2 BOM 浏览器对象模型
BOM(Browser Object Model)即浏览器对象模型。BOM提供了独立于内容而与浏览器窗口进行交互的对象;由于BOM主要用于管理窗口与窗口之间的通讯,因此其核心对象是window;BOM由一系列相关的对象构成,并且每个对象都提供了很多方法与属性;BOM缺乏标准,Javascript语法的标准化组织是ECMA,DOM的标准化组织是W3C,BOM最初是Netscape浏览器标准的一部分。
浏览器窗口交互的一些对象,例如可以移动、调整浏览器大小的window对象,可以用于导航的location对象与history对象,可以获取浏览器、操作系统与用户屏幕信息的navigator与screen对象,可以使用document作为访问HTML文档的入口,管理框架的frames对象等。
2.3 Javascript处理引擎
Javascript处理引擎是能解析并且运行Javascript代码的解释器。浏览器通常会有Javascript引擎,Javascript刚出来时就是运行在浏览器中,作为客户端语言使用。
常见的Javascript引擎:
(1)Chrome V8
(2)Firefox SpiderMonkey
(3)Microsoft Edge Chakra
提一下Node.js是基于Chrome V8引擎。上文提到V8引擎是用来解析执行JS,并且V8是基于ECMAScript标准实现的。换个角度说,Node.js里头没有DOM和BOM的操作,只保留的Javascript的语法核心(ES),并且增加了事件驱动的非阻塞 I/O 模型,使其轻量级和高效。Node.js作为服务运行在Windows、Linux、Mac,把Javascript的角色从前台开发,转移到了后台开发。
还有当前有点过时的用于Flash编程的ActionScript也是ECMAScript的具体实现。
相关免费学习推荐:Javascript学习教程
以上就是一起看看ECMAScript和Javascript的区别的详细内容,更多请关注其它相关文章!