第1章----javaScript简介

在今天,也就是2019/10/20 上午11:18这个时刻,我开始了以《javaScript 高级教程 第三版》此书为辅导,对javaScript进行一次系统性学习,在此我会以博客笔记的方式来加强我对此书的理解以及记录下配合个人以往项目经验的某些感悟。

一、javaScript简史
javaScript诞生于1995年,在当时主要目的是代替由服务器端语言负责的某些输入的验证操作。那个时候,绝大多数的英特网用户上网速度仅仅为28.82kb/s,但是随着网页的日益复杂,为了完成某些简单的表单验证操作,就需要我们等待较为漫长的时间来接收服务器对表单校验的结果。为了解决这个痛点,Netscape公司决定着手开发一种客户端语言,就此javaScript从此刻诞生了。

二、javaScript实现
虽然javaScript和ECMAScript通常都被人们用来表达相同含义,但是一个完整的javaScript实现应该由三种不同部分组成。
在这里插入图片描述
所以由图可知,javaScript是以ECMAScript为核心,配合宿主对象提供的DOM和BOM模型所构成的。

二、ECMAScript简介
由ECMA-262定义的ECMAScript与Web浏览器没有依赖关系,我们常见的Web浏览器只是ECMAScript的宿主环境之一。宿主环境不仅提供基本的ECMAScript实现,同时也会提供该语言的扩展,以便语言与环境之间对接交互。而这些扩展如DOM,则利用ECMAScript的核心类型和语法提供更多更具体的功能,以便实现对针对环境的操作。

三、文档对象模型(DOM)简介
文档对象模型是针对XML但经过扩展用于HTML(而不是浏览器本身)的应用程序编程接口。DOM把整个页面结构映射为一个树状多层节点结构。HTML和XML页面中的每个组成部分都是某种类型的节点,包含着不同的数据类型,对应着DOM树上的不同节点。

1、DOM起源
在开始阶段,IE 4.0 和Netscape Navigator 4.0 支持不同形式的DHTML(动态HTML【HTML、CSS和客户端脚本的一种集成】),这就在因为DHTML出现使得开发人员不需要重新加载网页,就可以修改外观和内容的同时也造成了两大浏览器的不兼容性。由于担心如果不加以制定相应的标准,Web开发流域将会出现两强割据的局面。由此,负责制定Web通信标准的W3C开始着手规划DOM。

2、DOM级别
2.1、DOM0级
关于这个级别,其实DOM0级标准是不存在的,所谓的DOM0级只是DOM历史坐标中的一个参考点,如果要具体指代,则可以说DOM0级指的是IE 4.0和 Netscape Navigator 4.0最初支持的DTHML。

2.2、DOM1级
DOM1级由两个模块组成:DOM核心(DOM Core)和DHTML。其中,DOM核心统一标准,规定XML是如何映射为DOM树状结构,以便简化对文档节点的访问和操作。DHTML模块则在DOM核心基础上,添加了对HTML的对象和方法,比如document对象、内联方法(onClick)。

2.3、DOM2级
如果说DOM1级的目的是映射文档结构,那么DOM2级目标就很宽泛了。
DOM2所引进的新模块
2.3.1、DOM视图
定义跟踪不同文档(比如:应用css前和之后的文档)视图的接口;

2.3.2、DOM事件
定义了事件和事件处理接口
比如:document.getElementsByClassName('className').addEventListener('eventType', callBack

2.3.3、
DOM样式
定义了基于CSS为元素应用样式的接口
比如:document.querySelector('cssSeletor').css.backGround = 'black'
DOM遍历和范围:定义了遍历和操作文档树的接口(比如:Iterator接口【ES6】);

2.4、DOM3级
进一步扩展了DOM,引入了以统一方式加载和保存文档的方法。

四、浏览器对象模型(BOM)简介
浏览器页面初始化时,会在内存创建一个全局对象,用来描述当前窗口的属性和状态,这个全局对象被称为浏览器对象模型。(注意:DOM虽然在BOM内,但并不属于BOM,它只是嵌入在 BOM中)

不同于ECMAScript是由ECMA组织标准化,DOM是由W3C组织标准化,BOM是没有任何组织对其进行标准化的,它是由各个不同浏览器厂商来规定各自的BOM,所以BOM存在兼容性问题

对于BOM,BOM内有个核心对象,那就是window对象,在window对象内部有六大模块。
1、document对象,即文档对象
2、frames,即HTML自框架
3、history,即页面的历史记录
4、location,即当前页面的地址
5、navigator,包含浏览器相关信息
6、screen,用户显示屏幕相关属性

图示如下
在这里插入图片描述
注:详细介绍后面再进行记录……

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值