1.1 简短的历史回顾
1.2 JavaScript实现
1.3 JavaScript版本
1.4 小结
————————————————————————————————————
1.1 历史回顾
1995年前在 客户端(Client) 的网页中提交表单验证时,需要与服务器进行一次往返通信,数据会在 服务器端(Server) 校验是否正确、有效。这样带来的问题就是,每次服务器发现错误需要修改一个或几个字段时都需要客户端再进行网络请求,彼时的网络非常缓慢,页面等待数据校验刷新的过程太烦躁。于是乎JavaScript便出现了,它的目的是:减少网络请求。
1995年,网景公司员工Brendan Eich,为即将发布的Netscape Navigator2(一款浏览器)开发了Mocha(后来改名为LiveScript)脚本语言,此时网景与Sun公司合作,将其改名为JavaScript来蹭热度。 随后网景的Netscape Navigator3发布,JavaScript 也跟着发布1.1版本。
1996年,微软发布了IE3,也开发了自己的JavaScript版本,称为JScript。
这导致不同浏览器之间的网页出现不兼容的情况。于是乎
1997年,欧洲计算机制造商协会(ECma),第39技术委员会(TC39)承担了网景公司提交的“标准化一门通用、跨平台、厂商、中立的脚本语言的语法和语义”任务。由此打造出了ECMA-262 即 ECNAScript 规范。希望成为行业标准。
1.2 JavaScript实现
JavaScript由三部分组成:
- ECMAScript:定义了JavaScript的语法规范和基本的功能,JavaScript基于ECMAScript规范实现在网页中(客户端)的操作,node基于ECMAScript规范实现在服务端的操作。
- 语法
- 类型
- 语句
- 关键字
- 保留字
- 操作符
- 全局对象
-
DOM:用于表示和操作HTML和XML文档的编程接口,它定义了JavaScript与XML或HTML文档的交互方式,DOM将文档表示为一个树形结构,树中的每个节点都是一个对象,开发人员可以通过Dom 提供的API 操作这些对象来修改文档的节点内容、结构和样式。
节点:文档中的基本单元,如标签(元素)、属性、文本等。节点之间通过父子关系(parent-child)与兄弟关系(sibling)连接在一起构成属性结构
标签节点:如
<div>、<p>、<img>,可通过DOM的API来访问和操作元素节点的标签名、属性、样式等。属性节点:如
<img src="example.jpg">中的src属性。可通过DOM的API来访问和修改属性的值。文本节点:如
<p>这是一个段落</p>$中的 这是一个段落"。可通过DOM的API来访问和修改文本内容。 -
BOM:用于操作浏览器窗口和浏览器本身的API集合。BOM提供了一系列的对象和方法,用于访问和控制浏览器窗口、窗口大小、页面跳转、cookie等。处理浏览器的历史记录、操作浏览器的位置和尺寸、与浏览器的通信等。
总结:基于ECMAScript规范,通过dom操作网页,通过bom操作浏览器。