Java Script的三个主要组成部分是:ECMAScript(核心),DOM(文档对象模型),BOM(浏览器对象模型)。


- ECMAScript


ECMA-262没有参照web浏览器,规定了语言的组成部分,具体包括语法、类型、语言、关键字、保留字、操作符、对象。

ECMAScript就是对该标准规定了各个方面内容的语言的描述。

ECMAScript的兼容:

1 支持ECMA-262描述的所有“类型,值,对象,属性,函数,以及程序语法和语义” 。

2 支持Unicode字符标准。

3 添加ECMA-262没有描述的更多“类型,值,对象,属性,函数”,ECMA-262说说的浙西新增特性,主要是指该标准中没有规定的新对象和对象的新属性。

4 支持ECMA-262中没有定义的“程序和正则表达式的语法”。也就是说可以修改和扩展内置的正则表达式语法。

- DOM(文档对象模型)


文档对象模型DOM是针对XML但经过扩展用于HTML的应用程序编程接口(API)。DOM把整个页面映射为一个多层次节点结构。HTML或者XML页面中的每个组成部分都是某种类型的节点,这些节点又包含着不同类型的数据。

在DOM中,页面一般可以用分层节点图表示。

DOM级别:

DOM1级于1998年10月成为W3C的推荐标准。BOM1由两个模块组成分别是DOM core和DOM HTML。

DOM core:规定如何映射基于XML的文档结构,以便简化对文档中任意部分的访问和操作。

DOM HTML:在DOM core的基础上加以扩展,添加了针对HTML的对象和方法。

DOM2级在原来DOM的基础上有扩充了鼠标和用户界面事件、范围、遍历等细分模块,通过对象接口增加了对css的支持。包括以下模块:

1 DOM Views(DOM视图):定义了跟踪不同文档视图的接口。

2 DOM Events(DOM事件):定义了事件与事件处理的接口。

3 DOM Traversal and Range(DOM遍历和范围):定义了遍历和操作文档的接口。

DOM3级则进一步扩展了DOM,引入了加载和保存模块以统一方式加载和保存文档的方法;新增了DOM验证模块主要还是验证文档的方法。

- BOM浏览器对象模型


BOM处理浏览器窗口和框架,人们习惯上把所有针对浏览器的JavaScript扩展算作是BOM的一部分。包括以下:

1 弹出新浏览器窗口的功能。

2 移动、缩放和关闭浏览器窗口的功能。

3 提供浏览器所加载页面的详细信息的navigator对象。

4 提供浏览器所加载页面的详细信息的location对象。

5 提供用户分辨率详细信息的screen对象。

6 对cookies的支持。

7 像XMLHttpRequest和IE的ActionXobject这样的自定义对象。

JavaScript的三个主要组成部分相关推荐

  1. 学习javascript数据结构(三)——集合

    前言 总括: 本文讲解了数据结构中的[集合]概念,并使用javascript实现了集合. 原文博客地址:学习javascript数据结构(三)--集合 知乎专栏&&简书专题:前端进击者 ...

  2. web 前端 如何分享到instagram_好程序员web前端教程分享前端javascript练习题三

    好程序员web前端教程分享前端javascript练习题三 cookie 一周内免登录 样式代码: 姓名: 密码: 一周内免登陆 js功能代码: var input=document.getEleme ...

  3. JavaScript进阶(三)

    JavaScript进阶(三) 2019版黑马程序员javaScript进阶面向对象ES6 122集教程,哔哩哔哩链接:https://www.bilibili.com/video/BV1Kt411w ...

  4. JavaScript 里三个点 ...,可不是省略号啊···

    摘要:Three dots ( - ) in JavaScript. 本文分享自华为云社区<JavaScript 里三个点 ... 的用法>,作者: Jerry Wang . Rest P ...

  5. javascript中三个等号的意思

    全等号,不需要类型转换做比较的时候使用.JavaScript在两个等号时是内部做类型转换的,如果你不需要这样,就用三个等号. 楼主也不散分,说这些我觉得已经足够了 转载于:https://www.cn ...

  6. 学习笔记(六)——JavaScript(三)

    文章目录 一.鼠标事件 1.1.鼠标移动事件(onmousemove) 1.2.鼠标按键按下与松开事件(onmousedown/onmouseup) 1.3.鼠标滚轮事件(onmousewheel) ...

  7. JavaScript 里三个点 ... 的用法

    Three dots ( - ) in JavaScript Rest Parameters 使用 rest 参数,我们可以将任意数量的参数收集到一个数组中,然后用它们做我们想做的事情. 引入了其余参 ...

  8. JavaScript 第三课 DOM

    主要内容: 节点 5个常用的DOM方法: getElementById.getElementByTagname.getElementByClassName.getAttribute和setAttrib ...

  9. JavaScript(三)—— JavaScript 函数/JavaScript 作用域/JavaScript 预解析/JavaScript 对象

    本篇为 JavaScript 系列笔记第三篇,将陆续更新 JavaScript(一)-- 初识JavaScript/注释/输入输出语句/变量/数据类型 JavaScript(二)-- JavaScri ...

最新文章

  1. 元素 context:component-scan 的前缀 context 未绑定。
  2. 二维平面内无人机的路径规划——势场法-改进
  3. Deep Learning论文笔记之(五)CNN卷积神经网络代码理解
  4. springboot整合图像数据库Neo4j
  5. [转载]android设置全屏和无标题
  6. 23种设计模式----------建造者模式
  7. linux ora27040,AnyBackup-Oracle 异机恢复任务失败,执行输出提示 ORA-00344、ORA-27040 错误...
  8. 微信小程序wepy框架资源汇总
  9. c语言如何求一个数学表达式的值,浅谈C语言中表达式的求值
  10. Javascript获取日期和星期
  11. springBoot,thymeleaf页面中js使用标签
  12. [转]ASP.NET MVC IOC 之AutoFac攻略
  13. 【数据分析系列】Python数据预处理总结篇
  14. Mac终端 连接远程服务器
  15. 想学游戏建模要从哪里开始?,外包私活怎么接?
  16. 介词短语就这三类用法
  17. R语言在线地图神器:Leaflet for R包(二)基础底图
  18. 用HEXO在Github建立个人博客
  19. BZOJ1984: 月下“毛景树”
  20. matlab 用古典雅可比方法求矩阵特征根 (仅使用基础函数)

热门文章

  1. 电感电容等对正弦电流信号的感抗或者阻抗需要从有效值角度考虑,从幅值角度考虑。瞬时的电压除以电流得到的瞬时感抗或者容抗是正切或者余切没有意义
  2. Nginx(8)_return和rewrite
  3. C语言 —— 函数介绍
  4. C1认证学习十二(网络拓扑)
  5. Android 适配 64 位架构
  6. 普通的html页面中ie11的兼容性问题
  7. jdk32位安装包下载_Photoshop CC 2014软件下载和安装教程
  8. 软件架构与设计(四)-----数据流架构
  9. 测试新版Android Studio的手机镜像效果
  10. 软件设计师考试下午案例真题(专业解析+参考答案)