简介JavaScript的组成

小伙伴们大家知道JavaScript有哪些部分组成吗?是否是有些小伙伴会感到“虎躯一震”,固然也有nb的的小伙伴马上就想到了答案。废话不说看下面的目录就知道了

JavaScripthtml

  • 1 ECMAScript
  • 2 DOM
  • 3 BOM

来上惯例:'想要知道某些东西,那么我们就须要知道它的由来'

接下来我们就看看,ECMAScript、DOM、BOM的由来.前端

1 JavaScript的产生程序员

我在高程3中看到JavaScript诞生于1995年。当时,JavaScript只是处理一些表单输入验证。在JavaScript问世以前,用户提交表单的时候都是经过服务器来验证的,你们能够想到,当时的网速和如今比较应该是”慢上几千倍吧“😨,我们做为用户考虑一下,好比,我们填写一下比较大的表单,用了几分钟,填完了我们提交到服务器,用了30秒,而后服务器有花了20秒的时间返回给我们一个错误信息,说我们的邮箱地址不合适或者电话号码不合适,我们心中或不会有千只“羊驼”奔腾😨。web

在1995那个年代,网络界浏览器商家,nb的公司有这么两个,浏览器

  • 1 Netscape Navigator (远景公司)
  • 2 Internater Explorer (微软公司)

1995年有这么一天,这天,远景公司但愿能有有一门语言,可以在客户端发向服务器以前可以验证一下表单格式和填写,(当时的远景公司真是前途不可限量啊😁,也可能当时被用户喷过😂),既能够完成前端验证,也能够减轻服务器压力,以及优化交互,这个操做有如今的话说,简直就是6666啊。 在那个用电话拨号上网的年代,可以在客户端完成一个基本的验证任务绝对是使人兴奋啊,一时之间JavaScript成为了浏览器必备的一个特点。服务器

因为JavaScript出现并成为浏览器必备特点之后,微软的 Intenater-Explorer浏览器绝对要和Netscape Navigator竞争自家产品,Intenater-Explorer3加入名为JScript的JavaScript实现,(命名为JScript是为了避开JavaScript版权问题😂)。以如今的眼光来看,微软1996年8月为进入web浏览器领域为实施这个重大举措,是致使Netscape Navigator后蒙羞的一个标志性事件。然而也标志着JavaScript做为一门语言,其开发进了一大步。cookie

微软推出了JScript和远景推出的JavaScript,意味着有两个版本的JavaScript。那么站在我们开发人员的角度来讲,这一件多么可怕的事情,我写一个web页面要只要兼容两个版本的JavaScript,而且有可能这两个版本差异很大。想一想就怕,这是双倍的开发啊,固然可是业界的开发人员也是有反馈,他们也受不了这种开发,固然他们更担忧的是以会不会有第三家公司在创造一个本的JavaScript,因而JavaScript标准化问题很块就被提上了议事日程。网络

2 ECMAScript的产生框架

你们看好了,传说的ECMAScript就要诞生了,上面我们知道JavaScript的由来和发展,以及多版本的创造,当时的业界担忧。因而,就在1997年,以JavaScript1.1位蓝本的建议被提交给欧洲计算机制造商协会(ECMA,European Computer Manufacturers Association)。 该协会指定39号技术委员(TC39,Technical Committe #39)负责**“标准化、跨平台、供应商中立的脚本语言的语法语义”**,TC39🈶来着当时浏览器的大佬们推荐的程序员,他们通过数月的努力完成了ECMA-262-----定义一种名为ECMAScript的新的脚本语言的标准. 接下来的日子中浏览器开发商都以ECMAScript的新的脚本语言的标准进行开发。 2.1 ECMAScript 有哪些组成 ECMAScript是JavaScript的核心定义主要包含如下。ide

  • 1 语法
  • 2 类型
  • 3 语句
  • 4 关键字
  • 5 保留字
  • 6 操做符
  • 7 对象

3 文档对象模型 DOM(Document Object Model)

聪明的小伙伴一看DOM就是知道是文档对象模型,为何有了DOM呢,在ECMAScript的定义中,是不包括输入和输出的定义,只是js的核心,浏览器实现ECMAScript的宿主,可是有核心也是不行的,因此浏览开发商不得不提出如下扩展,来遍历ECMAScript和宿主的交互,这些扩展中就包含了DOM,就这样DOM就产生了。

3.1 DOM的做用

DOM是针对于xml,但通过扩展用于HTML的应用程序接口。DOM把整个页面以家谱的形式一个或者多个节点

3.2 为何要用DOM

开发人员可得到页面的内容和结构,接住DOM提供的API,开发人员能够轻松的自如的实现DOM的增删改查,并且是在不通过页面刷新的状况下。 3.3 W3C规划DOM 当时各大厂商提出的扩展,各有不一样,就像上面JS刚刚产生的那样,可能没有浏览器随DOM的扩展语法和提供的API不同,对于开发人员来讲要开发一个使用与各个浏览区的web页面是个很是痛苦的事情,浏览器也互不兼容的局面,此时负责web通讯的W3C(World Wide Web Consortium),主动的开始规划DOM

DOM 并不仅是针对 JavaScript 的,不少别的语言也都实现了 DOM。 不过,在 Web 浏览器中,基于 ECMAScript 实现的 DOM 的确已经成为 JavaScript 这 门语言的一个重要组成部分。

3.4 DOM的组成

DOM1的规定的组成

DOM是有DOM Core 和 DOM HTML DOM Core 是如何映射基于XML的文档结构,以便于简化对文档任意部分操做。 DOM HTML模块则在DOM核心的基础上加以扩展,添加针对html的对象和方法。

DOM2的规定的组成

  • 1 DOM视图
  • 2 DOM事件
  • 3 DOM样式
  • 4 DOM遍历

DOM3的规定的组成

进一步扩展了 DOM,引入了以统一方式加载和保存文档的方法——在 DOM 加载和保 存(DOM Load and Save)模块中定义;新增了验证文档的方法——在 DOM 验证(DOM Validation)模

4 浏览器对象模型 BOM(Browser Object Model)

Internet Explorer 3 和 Netscape Navigator 3有一个共同的特点,那就是支持能够访问和操做浏览器窗口的浏览器对象模型(BOM,Browser Object Model)。

开发人员使用 BOM 能够控制浏览器显示的页面 之外的部分。而 BOM 真正不同凡响的地方(也是常常会致使问 题的地方),仍是它做为 JavaScript 实现 的一部分但却没有相关的标准。

这个问题在 HTML5 中获得了解决,HTML5 致力于把不少 BOM 功能写 入正式规范。HTML5 发布后,不少关于 BOM 的困惑烟消云散。

从根本上讲,BOM 只处理浏览器窗口和框架;但人们习惯上也把 全部针对浏览器的 JavaScript 扩展 算做 BOM 的一部分。下面就是一些这样的扩展:

 弹出新浏览器窗口的功能;
 移动、缩放和关闭浏览器窗口的功能;
 提供浏览器详细信息的 navigator 对象;
 提供浏览器所加载页面的详细信息的 location 对象;
 提供用户显示器分辨率详细信息的 screen 对象;
 对 cookies 的支持;
 像 XMLHttpRequest 和 IE 的 ActiveXObject 这样的自定义对象。

因为没有 BOM 标准能够遵循,所以每一个浏览器都有本身的实 现。虽然也存在一些事实标准,例如 要有 window 对象和 navigator 对象等,但每一个浏览器都会为这两个对象乃至 其余对象定义本身的属 性和方法。如今有了 HTML5,BOM 实现的细节有望朝着兼容性愈来愈高的方向发展。

各位小伙伴,看完高程3的第一章回忆出来的,JS大体记得发展和组成就是这样,若是发现有不足的地方请尽情的提出来,欢迎浏览*

相关文章
相关标签/搜索