第一章 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并 ...
随机推荐
- csu1395模拟
#include<stdio.h> #include<string.h> #define N 10 char s[N][N][N]={{"***",&qu ...
- 自建X509证书
X509证书是需要买的,自己建的证书不会被浏览器认可,会弹出提示安全不受保障的页面. 学习一下如何建,实际用到还是要买. 打开vs2015开发员人员命令提示 输入创建证书的命令 Makecert.ex ...
- Sublime Text 3常用插件—Emmet
原文链接:http://www.cnblogs.com/easy-blue/p/6617852.html 摘要: 安装请看上一篇Sublime Text—安装,和sublime自带快捷键一起用,写ht ...
- javap命令
javap命令 学习了:https://www.cnblogs.com/frinder6/p/5440173.html javap命令查看java类的字节码: 对于synchronized块,可以显示 ...
- [Javascript] Understand common misconceptions about ES6's const keyword
Values assigned with let and const are seen everywhere in JavaScript. It's become common to hear the ...
- iOS音频播放之AudioQueue(一):播放本地音乐
AudioQueue简单介绍 AudioStreamer说明 AudioQueue具体解释 AudioQueue工作原理 AudioQueue主要接口 AudioQueueNewOutput Audi ...
- WndProc函数参数列表
protected override void WndProc(ref Message m) 实现了这一点. 重写WndProc函数,可以捕捉所有窗口发生的消息.这样,我们就可以"篡改&qu ...
- c27---typedef
// // main.c // typedef #include <stdio.h> /* typedef可以给一个已知的数据类型起别名. typedef 原有的数据类型 别名; 注意: ...
- 寒武纪芯片——有自己的SDK,支持tf、caffe、MXNet
寒武纪芯片 产品中心>智能处理器IP 智能处理器IP MLU智能芯片 软件开发环境 Cambricon-1A 高性能硬件架构及软件支持兼容Caffe.Tensorflow.MXnet等主流AI开 ...
- Nginx 配置埋点js日志采集
页面埋点&nginx日志采集 页面(web容器:httpd/nginx负载均衡 + apache server)<===> 日志采集服务器(nginx服务器) 通过某个页面跳转到我 ...