1.1   JavaScript 的简史

JavaScript 诞生于1995年 ,后由 欧洲计算机制造商协会( ECMA,European Computer Manufacturers Association进行标准化  。ISO/IEC 也采用了ECMAscript 做为标准 自此以后 浏览器开发商就开始励

志将ECMAScript 作为各自 JavaScript  的实现基础,   结束了各自实现的混乱局面。

1.2   JavaScript 的实现

JavaScript 和 ECMAScript 常常被当作相同的含义,但实际上JavaScript 却要比ECMAScript表示的含义要多的多

一个完整的JavaScript实现应该是由 以下不同部分组成

  • 核心(ECMAScript)
  • 文档对象模型(DOM)
  • 浏览器对象模型(BOM)

1.2.1  ECMAScript

ECMAScript 与Web浏览器没有依赖关系。Web浏览器只是ECMAScript 实现可能的 宿主环境 之一。

它规定了以下部分:

    • 语法
    • 类型
    • 语句
    • 关键词
    • 保留字
    • 操作符
    • 对象

各大浏览器对ECMAScript的支持程度都同。

1.2.2  文档对象模型 (DOM)

1、为什么要用DOM 文档对象模型 是 用于 HTML 的应用程序编程接口.DOM把整个页面映射为一个多层点结构  借助DOM提供的API,可以轻松实现 删除 添加 替换 任何节点 。

DOM 由 W3C (万维网联盟) 规划

2、 DOM的级别:

    • DOM1 : 映射文档结构
    • DOM2 :     DOM 视图   DOM事件   DOM样式  DOM遍历和范围
    • DOM3 :   引入了同意方式加载和保存文档的方法 支持XML1.0 规范

3、其他DOM标准   SVG1.0  MatgML1.0   SMIL

1.2.3   浏览器对象模型 (BOM)

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

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

由于 BOM 没有标准可以遵循 浏览器都有自己 实现 现在HTML5出现了 , BOM的实现有了兼容的趋势

 

第一章 JavaScript 简介的更多相关文章

  1. 《JavaScript高级程序设计》——第一章JavaScript简介

    第一章主要讲了JavaScript的诞生和发展.刚刚接触JavaScript的我,似乎对这些内容并不感兴趣,快速看了一遍就开始去看第二章了. 看完第一章,收获也就是了解到JavaScript由ECMA ...

  2. 《avascript 高级程序设计(第三版)》 ---第一章 Javascript简介

    这一章主要是介绍了 Javascript的一些历史: 1.Javascript主要由三个部分组成:ECMAScript,DOM,BOM. ECMAScript:现在主流浏览器已经全部支持. DOM:把 ...

  3. JS红宝书笔记——第一章 JavaScript简介

    1.JavaScript简史 Netscape公司决定开发一种客户端语言用来处理浏览器端简单的表单验证. Netscape公司派布兰登·艾奇(BrendanEich)为计划于1995年2月发布的Net ...

  4. 第一章 JavaScript简介

    DOM级别 DOM1:映射文档的结构 DOM2: DOM视图,定义了跟踪不同文档视图的接口(例如CSS应用前后的文档) DOM事件,定义了事件和事件处理的接口 DOM样式,定义了基于CSS为元素应用样 ...

  5. 第一章javascript简介

    javascript 当诞生于1995 最开始是目的是处理在服务器端进行的表单验证:让其在服务器端验证改为在服务端验证,大大提高速度(当时网络慢) 如今javascript是一门功能全面的语言,包含闭 ...

  6. 第一章 C++简介

    第一章  C++简介 1.1  C++特点 C++融合了3种不同的编程方式:C语言代表的过程性语言,C++在C语言基础上添加的类代表的面向对象语言,C++模板支持的泛型编程. 1.2  C语言及其编程 ...

  7. python 教程 第一章、 简介

    第一章. 简介 官方介绍: Python是一种简单易学,功能强大的编程语言,它有高效率的高层数据结构,简单而有效地实现面向对象编程.Python简洁的语法和对动态输入的支持,再加上解释性语言的本质,使 ...

  8. 第1章 JavaScript 简介

    第1章 JavaScript 简介 1.1 JavaScript简史 1.2 JavaScript实现 1.2.1 ECMAScript 1.2.2 文档对象模型(DOM) 1.2.3 浏览器对象模型 ...

  9. [书籍翻译] 《JavaScript并发编程》第一章 JavaScript并发简介

    > 本文是我翻译<JavaScript Concurrency>书籍的第一章,该书主要以Promises.Generator.Web workers等技术来讲解JavaScript并 ...

随机推荐

  1. Java 集合之Collection 接口和遍历方法

    这几篇是我按网上的教程来实习的. URL: http://www.cnblogs.com/jbelial/archive/2013/03/27/2981395.html 打代码的感觉挻好的.. 注意在 ...

  2. mongodb-replication set 复制集

    推荐一篇mongodb集群的博客 replication set 多台服务器维护相同的数据副本,提高服务的可用性 1.启动3个实例,且声明属于某复制集 mongod --port 27017 --db ...

  3. ZOJ 3527

    这题难在破环. 对于不是环的情况,只需按照一般的树形DP来做,一步一步往根递推就可以了.对于环,则枚举其中一点的两种情况,取或不取,然后再递推,就可以了.当到达某结点的下一结点为环开始的点时,退出即可 ...

  4. 2015年北京大学软件project学科优秀大学生夏令营上机考试---C:单词翻转面试题

    题目描写叙述:翻转句子中单词的顺序.但单词内字符的顺序不变.句子中单词以空格符隔开. 为简单起见,标点符号和普通字母一样处理.如:"I am a student."翻转成" ...

  5. SERVICE_NAME和SERVICE_NAMES和GLOBAL_DBNAME的各自己定义

    tnsnames.ora文件中边SERVICE_NAME的參数值--对于动态注冊和静态注冊.该參数有不同的取值 对于动态注冊: The following pfile/spfile parameter ...

  6. Leetcode 贪心 Best Time to Buy and Sell Stock

    本文为senlie原创.转载请保留此地址:http://blog.csdn.net/zhengsenlie Best Time to Buy and Sell Stock Total Accepted ...

  7. find命令用法举例

    显示7天前(后)的时间 for linux “find”的用法: 删除”/tmp”目录下,7天前的文件 find /tmp -name "*" -type f-mtime +7 - ...

  8. POJ3204 Ikki's Story - Road Reconstruction 网络流图的关键割边

    题目大意:一个有源有汇的城市,问最少增加城市中的多少道路可以增加源到汇上各个路径上可容纳的总车流量增加. 网络流关键割边集合指如果该边的容量增加,整个网络流图中的任意从原点到汇点的路径的流量便可增加. ...

  9. spring框架spring之HibernateTemplate

    转自:https://blog.csdn.net/acmman/article/details/44652207

  10. 2014/09/20 关于ArrayList的几种操作

    1.删除ArrayList集合元素 删除ArrayList集合里面的元素时,提供了Clear方法,Remove方法,RmoveAt方法和RemoveRange方法. Clear方法是移除所有的元素 R ...