javascript 有三部分构成,ECMAScript,DOM和BOM,根据宿主(浏览器)的不同,具体的表现形式也不尽相同,ie和其他的浏览器风格迥异。
JavaScript=语法+BOM(含DOM) [关系之理解] BOM>DOM

1 DOM 是 W3C 的标准; [所有浏览器公共尊守的标准]
2 BOM 是 各个浏览器厂商根据 DOM 在各自浏览器上的实现; [表现为不同浏览器定义有差别,实现方式不同]
3 window 是 BOM 对象,而非 js 对象;

完整的JavaScript是由ECMAScript(语法)、Browser Objects=BOM(包含DOM)(特性)组成的。
JavaScript=语法+BOM(含DOM) [关系之理解]
同理:
VBScript=语法+BOM(含DOM)

上图是JavaScript的组成图示,箭头代表调用关系[http://www.dreamdu.com/javascript/what_is_javascript/]。

什么是ECMAScript:

  • ECMA是European Computer Manufacturers Association的缩写,即欧洲计算机制造商协会。欧洲计算机制造商协会是制定信息传输与通讯的国际化标准组织。官方网站为,http://www.ecmascript.org/
  • ECMAScript是ECMA制定的标准化脚本语言。
  • 目前JavaScript使用的ECMAScript版本为ECMAScript-262
  • ECMAScript被国际化标准组织采纳为ISO/IEC 16262

    什么是DOM:
    文件对象模型
    (Document Object Model,简称DOM),是W3C组织推荐的处理可扩展置标语言的标准编程接口。

    Document Object Model 的历史可以追溯至1990年代后期微软与Netscape的“浏览器大战”(browser wars),双方为了在JavaScript 与 JScript一决生死,于是大规模的赋予浏览器强大的功能。微软在网页技术上加入了不少专属事物,计有VBScript、ActiveX、以及微软自家的DHTML格式等,使不少网页使用非微软平台及浏览器无法正常显示。DOM即是当时蕴酿出来的杰作。

  • DOM是Document Object Model的简写,既文档对象模型。
  • DOM由一系列对象组成,是访问、检索、修改XHTML文档内容与结构的标准方法。
  • DOM是跨平台与跨语言的。[一个公共文档定义标准]
  • DOM用于XHTML、XML文档的应用程序接口(API)。
  • DOM提供一种结构化的文档描述方式,从而使HTML内容使用结构化的方式显示。
  • DOM标准是由w3c制定与维护的 http://www.w3.org/DOM/
  • DOM的顶层是document对象(DOM对象模型见下图)。
    http://www.dreamdu.com/javascript/what_is_browser_objects

    什么是BOM

    • BOM是browser object model的缩写,简称浏览器对象模型
    • BOM提供了独立于内容而与浏览器窗口进行交互的对象
    • 由于BOM主要用于管理窗口与窗口之间的通讯,因此其核心对象是window
    • BOM由一系列相关的对象构成,并且每个对象都提供了很多方法与属性
    • BOM缺乏标准,JavaScript语法的标准化组织是ECMA,DOM的标准化组织是W3C
    • BOM最初是Netscape浏览器标准的一部分
      http://www.dreamdu.com/javascript/what_is_bom/
    • BOM是Browser Object Model的简写,既浏览器对象模型。
    • BOM由一系列对象组成,是访问、控制、修改客户端(浏览器)的属性的方法。
    • BOM没有统一的标准(每种客户端都可以自定标准)。
    • BOM的顶层是window对象(BOM对象模型见上图)。

    什么是Browser_Objects

    JavaScript包含许多浏览器对象(Browser Objects),这些对象可以与浏览器窗体网页产生互动。Browser Objects也可被称作BOM,它包含一个名叫DOM的节点,每种对象模型都由一种层次结构组成,这种层次结构就像金字塔,DOM的顶层是 document对象,BOM的顶层是window对象。

    上图是Browser Objects的图示,包括BOM与DOM两部分,箭头代表继承关系。从上图可以大致了解JavaScript的所有特性。http://www.dreamdu.com/javascript/what_is_browser_objects/

    document是一个既属于BOM又属于DOM的对象,而location对象,则是一个既属于window,又属于document的属性

理清javascript的相关概念 DOM和BOM的更多相关文章

  1. javascript、ECMAScript、DOM、BOM关系

    ECMAScript,正式名称为 ECMA 262 和 ISO/IEC 16262,是宿主环境中脚本语言的国际 Web 标准. ECMAScript 规范定义了一种脚本语言实现应该包含的内容:但是,因 ...

  2. JavaScript的组成—ECMAScript、BOM和DOM

      JavaScript 是一种基于 ECMAScript 规范的脚本语言,并在此基础上进行了自己的封装.ECMAScript 不是一种编程语言,仅仅是一种脚本语言规范,由欧洲计算机协会制定和发布,任 ...

  3. 【JavaScript】DOM和BOM之我的理解

    2018年12月17日 一.我们能够对html文档和浏览器做的操作 (一)html文档 增.删.改.可以在html中增加.删除.改动元素 (二)浏览器 地址栏:输入.修改地址 历史记录:前进.后退.跳 ...

  4. Javascript的组成——EMACScript、DOM、BOM

    EMACScript:一种规范,JS必须准守它的约定,JS的核心. DOM:文档对象模型,W3C标准,JS访问HTML文档的接口. BOM:浏览器对象模型,没有统一的标准.JS访问浏览器的接口. EM ...

  5. JavaScript的组成 | DOM/BOM

    往期回顾 在上一期的<JavaScript的组成 | 核心-ECMAScript >☜里,我们有说到JavaScript 是由三大部分组成,分别是:核心ECMAScript.文档对象模型- ...

  6. Javascript组成--ECMAScript,DOM,BOM

    ECMAScript 部分 ECMAScript是一个标准,JS只是它的一个实现,其他实现包括ActionScript; “ECMAScript可以为不同种类的宿主环境提供核心的脚本编程能力”,即EC ...

  7. JAVAScript中DOM与BOM的差异分析

    JAVAScript 有三部分构成,ECMAScript,DOM和BOM,根据浏览器的不同,具体的表现形式也不尽相同.我们今天来谈一谈DOM和BOM这俩者之间的差异. 用百科上的来说: 1. DOM是 ...

  8. 关于JavaScript的DOM和BOM

    本文探讨JavaScript的三大部分中的两个部分,DOM和BOM. DOM介绍 DOM,全称Document Object Model,即文档对象模型.它 是W3C的一个标准,定义了一个对文档操作的 ...

  9. 前端学习 之 JavaScript DOM 与 BOM

    一. DOM介绍 1. 什么是DOM? DOM:文档对象模型.DOM 为文档提供了结构化表示,并定义了如何通过脚本来访问文档结构. 目的其实就是为了能让js操作html元素而制定的一个规范. DOM就 ...

随机推荐

  1. Unity3d 模型导入选项

  2. URAL 1297 Palindrome 最长回文子串

    POJ上的,ZOJ上的OJ的最长回文子串数据量太大,用后缀数组的方法非常吃力,所以只能挑个数据量小点的试下,真要做可能还是得用manacher.贴一下代码 两个小错,一个是没弄懂string类的sub ...

  3. hdu 1175 连连看 (广搜,注意解题思维,简单)

    题目 解析见代码 #define _CRT_SECURE_NO_WARNINGS //这是非一般的最短路,所以广搜到的最短的路不一定是所要的路线 //所以应该把所有的路径都搜索出来,找到最短的转折数, ...

  4. javascript表格的添加和删除

    <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <m ...

  5. utmp, wtmp, and lastlog 日志清除工具

    utmp, wtmp, and lastlog 日志清除工具 http://blog.itpub.net/83980/viewspace-801664/

  6. POJ2503Babelfish

    http://poj.org/problem?id=2503 这个题一开始是想用字典树,发现太麻烦..... #include<cstdio> #include<cstring> ...

  7. ORA-04052\ ORA-00604\ORA-12154

    ORA-04052: error occurred when looking up remote object TBCS.SUBS_PRIVILEGE@DD2A ORA-00604: error oc ...

  8. http://my.oschina.net/u/1185331/blog/502350

    http://my.oschina.net/u/1185331/blog/502350

  9. Python图片与其矩阵数据互相转换

    程序 # coding=gbk from PIL import Image import numpy as np # import scipy import matplotlib.pyplot as ...

  10. SULogger:iOS日志可视化工具

    前言 debug对于咋们程序员来说家常便饭,但有时候我们会遇到一种情况:开发某个功能时,需要在某个特定场景下进行调试,而这个场景并没有MacBook来进行连接debug,偏偏我们需要获得调试时的一些信 ...