第一章 JavaScript 简介
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 简介的更多相关文章
- 《JavaScript高级程序设计》——第一章JavaScript简介
第一章主要讲了JavaScript的诞生和发展.刚刚接触JavaScript的我,似乎对这些内容并不感兴趣,快速看了一遍就开始去看第二章了. 看完第一章,收获也就是了解到JavaScript由ECMA ...
- 《avascript 高级程序设计(第三版)》 ---第一章 Javascript简介
这一章主要是介绍了 Javascript的一些历史: 1.Javascript主要由三个部分组成:ECMAScript,DOM,BOM. ECMAScript:现在主流浏览器已经全部支持. DOM:把 ...
- JS红宝书笔记——第一章 JavaScript简介
1.JavaScript简史 Netscape公司决定开发一种客户端语言用来处理浏览器端简单的表单验证. Netscape公司派布兰登·艾奇(BrendanEich)为计划于1995年2月发布的Net ...
- 第一章 JavaScript简介
DOM级别 DOM1:映射文档的结构 DOM2: DOM视图,定义了跟踪不同文档视图的接口(例如CSS应用前后的文档) DOM事件,定义了事件和事件处理的接口 DOM样式,定义了基于CSS为元素应用样 ...
- 第一章javascript简介
javascript 当诞生于1995 最开始是目的是处理在服务器端进行的表单验证:让其在服务器端验证改为在服务端验证,大大提高速度(当时网络慢) 如今javascript是一门功能全面的语言,包含闭 ...
- 第一章 C++简介
第一章 C++简介 1.1 C++特点 C++融合了3种不同的编程方式:C语言代表的过程性语言,C++在C语言基础上添加的类代表的面向对象语言,C++模板支持的泛型编程. 1.2 C语言及其编程 ...
- python 教程 第一章、 简介
第一章. 简介 官方介绍: Python是一种简单易学,功能强大的编程语言,它有高效率的高层数据结构,简单而有效地实现面向对象编程.Python简洁的语法和对动态输入的支持,再加上解释性语言的本质,使 ...
- 第1章 JavaScript 简介
第1章 JavaScript 简介 1.1 JavaScript简史 1.2 JavaScript实现 1.2.1 ECMAScript 1.2.2 文档对象模型(DOM) 1.2.3 浏览器对象模型 ...
- [书籍翻译] 《JavaScript并发编程》第一章 JavaScript并发简介
> 本文是我翻译<JavaScript Concurrency>书籍的第一章,该书主要以Promises.Generator.Web workers等技术来讲解JavaScript并 ...
随机推荐
- 纪录:Solr6.4.2+Flume1.7.0 +morphline+kafka集成
当前大多数企业版hadoop的solr版本都还停留在solr4.x,由于这个版本的solr本身的bug较多,使用起来会出很多奇怪的问题.如部分更新日期字段失败的问题. 最新的solr版本不仅修复了以前 ...
- 【ACM】hdu_zs2_1006_Problem F_201308031058
Problem F Time Limit : 3000/1000ms (Java/Other) Memory Limit : 32768/32768K (Java/Other)Total Subm ...
- Spring MVC-Hello World示例(转载实践)
以下内容翻译自:https://www.tutorialspoint.com/springmvc/springmvc_hello_world_example.htm 说明:示例基于Spring MVC ...
- PL SQL Developer client 连接server
安装完Oracle,PLSQL之后,在server中打开监听. 计算机右键-管理-服务和应用程序-服务-打开以Oracle开头的服务,特别是监听,这个最重要.详细如图所看到的. (1)配置监听的位置 ...
- Python去除多余空格
今天做爬虫时.发现结果中好多多余的空格.然后有强迫症的我当然不会放过 " xyz ".strip() # returns "xyz" " xyz &q ...
- 利用LruCache载入网络图片实现图片瀑布流效果(改进版)
PS: 2015年1月20日21:37:27 关于LoadImageAsyncTask和checkAllImageViewVisibility可能有点小bug 改动后的代码请參见升级版本号的代码 ht ...
- Android.mk宏定义demo【转】
本文转载自:http://blog.csdn.net/u010164190/article/details/72783963 1.Android.mk LOCAL_PATH := $(call my ...
- 2017-3-10 leetcode 229 238 268
今天登陆leetcode突然发现531被锁了,有种占了便宜的感觉哈哈哈! ================================================ leetcode229 Ma ...
- 10.2 Hibernate持久层
点击项目右键->MyEclipse->Add Hibernate Capabilities 打开MyEclipse Hibernate Perspective(MyEclipse Hibe ...
- C#服务控件UpdatePanel的局部刷新与属性AutoPostBack回传
C#服务控件许多都有AutoPostBack这一属性(AutoPostBack意思是自动回传,也就是说此控件值更改后是否和服务器进行交互),如下代码所示: protected void Textbox ...