zoukankan      html  css  js  c++  java
  • Javascript系列之js简介

    JavaScript是一种网络客户端脚本语言,javascript有三个组成部分:

    1)核心(ECMAScript)---描述了语言的基本语法和对象

    2)文档对象模型(DOM)---描述了处理网页内容的方法和接口

    3)浏览器对象模型(BOM)---描述了与浏览器进行交换的方法和接口

    1、ECMAScript

    ECMAScript与Web浏览器没有任何依赖关系,它本身也不包含输入输出定义(这点与 C 这类语言不同,它需要依赖外部的库来完成这类任务)。Web浏览器只是ECMAScript实现可能的宿主环境之一,宿主环境不仅提供基本的ECMAScript实现,同时也提供语言的扩展,以便语言与环境间对接交互。

    ECMAScript是实现的ECMA-262标准,该标准没有参照web浏览器,主要规定了语言的组成部分:

    1)语法

    2)类型

    3)语句

    4)关键字

    5)保留字

    6)操作符

    7)对象

    ECMAScript是对该标准规定的各个方面内容的语言的描述.它作为其他语言的功能基准,JavaScript就是实现了ECMAScript,Adobe ActionScript同样也实现了ECMAScript.

    2、DOM

    DOM(Document Object Model)是针对XML但经过扩展用语HTML的应用程序编程接口(API Application Programming Interface).DOM把整个页面映射为一个多层节点结构.HTML或XML页面中的每个组成部分都是某种类型的节点,这些节点又包含着不同类型的数据.

    1)为什么要试用DOM

    自从 IE 4.0 和 Netscape Navigator 4.0 开始支持不同形态的动态 HTML(DHTML),开发者首次能够在不重载网页的情况下修改它的外观和内容。这是 Web 技术的一大飞跃,不过也带来了巨大的问题。Netscape 和微软各自开发自己的 DHTML,从而结束了 Web 开发者只编写一个 HTML 页面就可以在所有浏览器中访问的时期。业界决定必须要做点什么以保持 Web 的跨平台特性 ,他们担心如果放任 Netscape 和微软公司这样做,Web 必将分化为两个独立的部分,每一部分只适用于特定的浏览器。因此,负责指定 Web 通信标准的团体 W3C(World Wide Web Consortium)就开始制定 DOM。

    2)DOM级别

    DOM1级(DOM Level1)于1998.10成为W3C的推荐标准.DOM1级由两个模块组成:DOM核心(DOM Core)和DOM HTML.DOM核心规定的是如何映射基于XML的文档,以便简化对文档中的任意部分的访问和操作.DOM HTML模块则在DOM核心的机场上加以扩展,添加了针对HTML的对象和方法.

    注意,DOM 不是 JavaScript 专有的,事实上许多其他语言都实现了它 。不过,Web 浏览器中的 DOM 已经用 ECMAScript 实现了,现在是 JavaScript 语言的一个很大组成部分。

    DOM Level 1 只是一个目标,即规划文档的结构,DOM Level 2 的目标就广泛多了。对原始 DOM 的扩展添加了对鼠标和用户界面事件(DHTML 对此有丰富的支持)、范围、遍历(重复执行 DOM 文档的方法)的支持,并通过对象接口添加了对 CSS(层叠样式表)的支持。由 Level 1 引入的原始 DOM Core 也加入了对 XML 命名空间的支持。

    DOM Level 2 引入了几种 DOM 新模块,用于处理新的接口类型:

       1)DOM 视图 - 描述跟踪文档的各种视图(即 CSS 样式化之前和 CSS 样式化之后的文档)

       2)DOM 事件 - 描述事件的接口

       3)DOM 样式 - 描述处理基于 CSS 样式的接口

       4)DOM 遍历和范围 - 描述遍历和操作文档树的接口

    DOM Level 3 引入了以统一的方式载入和保持文档的方法(包含在新模块 DOM Load and Save)以及验证文档(DOM Validation)的方法,从而进一步扩展了 DOM。在 Level 3 中,DOM Core 被扩展为支持所有的 XML 1.0 特性,包括 XML Infoset、XPath 和 XML Base。

    在学习 DOM 时,可能会遇到有人引用 DOM Level 0。注意,根本没有 DOM Level 0 这个标准,它只是 DOM 的一个历史参考点(DOM Level 0 指的是 IE 4.0 和 Netscape Navigator 4.0 中支持的原始 DHTML)

    3、BOM

    IE 3.0 和 Netscape Navigator 3.0 提供了一种特性 - BOM(浏览器对象模型 ),可以对浏览器窗口进行访问和操作 。使用 BOM,开发者可以移动窗口、改变状态栏中的文本以及执行其他与页面内容不直接相关的动作。使 BOM 独树一帜且又常常令人怀疑的地方在于,它只是 JavaScript 的一个部分,没有任何相关的标准 。

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

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

    由于没有相关的 BOM 标准,每种浏览器都有自己的 BOM 实现 。有一些事实上的标准,如具有一个窗口对象和一个导航对象,不过每种浏览器可以为这些对象或其他对象定义自己的属性和方法。

  • 相关阅读:
    documentFragment文档碎片
    OpenResty之resty.limit.count 模块介绍
    vue前端分页多条件搜索
    element ui Tree树形控件获取未全选父节点和子节点id
    如何使 pdf 文件在浏览器里面直接下载而不是打开
    关于本博客
    圆锥曲线基础知识点
    NOI2021游记
    20210716模拟赛
    计数+动态规划
  • 原文地址:https://www.cnblogs.com/dreamfly-yhl/p/3150607.html
Copyright © 2011-2022 走看看