1. JS简介
1995年诞生,作者布兰登·艾奇 Brendan Eich
为了处理输入验证操作,减少不必要的数据交换,节省带宽资源
为什么会有js标准化?
Netscape拥有Javascript,微软为了避开与Netscape有关的授权问题,微软实现自己的Javascript,命名为JScript,实现上有差异,导致后来很多的兼容性问题。
ECMA-欧洲计算机制造商协会
TC39-39号技术委员会 Technical Committee #39
ECMAScript是JavaScript的子集,也就是说JavaScript包含ECMAScript。
JavaScript = ECMAScript + DOM + BOM
核心:ECMAScript
文档对象模型:DOM
浏览器对象模型:BOM
Web浏览器只是ES实现的宿主之一,并无绑定关系,其他宿主:Node、Adobe Flash等。
宿主环境不仅提供基本的ES实现,同时也会提供该语言的扩展,以便语言与环境之间的对接交互。
ECMAScript
ECMA-262——新脚本语言的标准
ECMA-262 edition | 改动 |
---|---|
1st edition | JS 1.1 |
2nd edition | 编辑加工 |
3rd edition | 真正修改,里程碑,真正的编程语言 |
4th edition | es6的前身,跨度大,被放弃 |
5th edition | ECMAScript 3.1 |
6th edition | … |
文档对象模型 DOM
用于HTML的应用程序编程接口 API,DOM把整个页面映射为一个多层节点结构。文档树。
页面 -> 节点 -> 数据
作用:借助DOM提供的API,可以轻松实现删除、添加、替换或修改任何节点。
之所以会有DOM,也是因为Netscape和微软两强割据,浏览器互不兼容,W3C才规划推出DOM。
DOM级别
DOM1级(两个模块)
DOM核心——规定如何映射基于XML的文档结构,以方便访问和操作文档内容
DOM HTML——在核心基础上扩展,添加针对HTML的对象和方法
DOM2级
DOM视图
DOM事件
DOM遍历和范围
DOM样式——对CSS的支持(通过对象接口添加)
DOM3级
DOM加载和保存模块——以统一方式加载和保存文档的方法
DOM验证模块——新增验证文档的方法
浏览器对象模型 BOM
BOM只处理浏览器窗口和框架,外加JS扩展。
2. HTML+JS
<script type="text/javascript" src="url"></script>
这个js文件可以被同域访问,也可以被跨域访问。
所有