初学JavaScript第一章
一、JavaScript简介
JavaScript诞生于1995年。当时,它的主要目的是处理以前由服务器端语言(如 Perl)负责的一些输入验证操作。它是一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。
在1995年时,由Netscape公司的Brendan Eich,在网景导航者浏览器上首次设计实现而成。因为Netscape与Sun合作,Netscape管理层希望它外观看起来像Java,因此取名为JavaScript。但实际上它的语法风格与Self及Scheme较为接近。
为了取得技术优势,微软推出了JScript,CEnvi推出ScriptEase,与JavaScript同样可在浏览器上运行。为了统一规格,因为JavaScript兼容于ECMA标准,因此也称为ECMAScript。
二、JavaScript核心(ECMAScript)
ECMA-262定义的ECMAScriot与Web没有依赖关系
ECMAScript本身不包含输入和输出定义,只有语言的基础
-
Web浏览器只是ECMAScript实现可能的宿主环境之一
宿主环境提供基本的ECMAScript实现,提供该语言的扩展(DOM)
其余的宿主环境Node(一种服务端JavaScript平台)和Adobe Flash
-
组成部分
1.语法
2.类型
3.语句
4.关键字
5.保留字
6.操作符
7.对象
-
ECMAScript兼容
1.支持ECMA-262描述的所有“类型、值、对象、属性、函数以及程序语法和语义”
2.支持Unicode字符标准
3.添加EMCA-262没有描述的“更多类型、值、对象、属性、和函数”
4.支持EMCA-262没有定义的”程序和正则表达式“(可以修改和扩展内置的正则表达式语法)
三、文档对象模型(DOM,Document Object Model)
提供访问和操作网页内容的方法和接口
针对XML但经过扩展用于HTML的应用程序编程接口(API,Application Programming Interface)
HTML和XML页面中每个部分都是某种类型的节点,这些节点包含着不同类型的数据。
DOM可以创建表示文档的树形图,开发人员获得控制页面内容和结构的主动权。借助DOM提供的API,开发人员可以轻松自如地删除、添加、替换和修改任何节点
-
DOM级别
1.DOM0级:实际上是不存在的,DOM0级只是DOM历史坐标中的一个参照点。指的是Internet Explorer 4.0和 Netscape Navigator 4.0最初支持的DHTML。
2.DOM1级:目标是映射文档的结构,经过拓展后支持XML命名空间。
3.DOM2级:拥有鼠标和用户界面事件、范围、遍历(迭代DOM文档的方法)等细分模块,通过对象结构增加CSS(Cascading Style Sheets层叠样式表)的支持。
DOM应用广泛,许多语言都实现了DOM(有JavaScript等)
每种语言都可以制定其DOM标准,添加于特定语言相关的新方法和新街口
目前,支持 DOM已经成为浏览器开发商的首要目标,主流浏览器每次发布新版本都会改进对 DOM 的支持。
四、浏览器对象模型(BOM,Browser Object Model)
提供于浏览器交互的方法和接口
开发人员使用BOM可以控制浏览器显示的页面以外的部分。
在HTML5之前作为JavaScript实现的一部分却没有相关的标准,导致容易出现问题。
习惯把所有针对浏览器的JavaScript扩展算作BOM的一部分。
五、JavaScript版本
只有 Netscape/Mozilla浏览器才遵循1.0/1.1/1.2等(JavaScript版本)这种编号模式。
-
IE的 JScript 就采用了另一种版本命名方案。
JScript 的版本号与JavaScript 的版本号(即Netscape/Mozilla浏览器的编号模式)之间不存在任何对应关系。
大多数浏览器在提及对 JavaScript 的支持情况 时,一般都以 ECMAScript兼容性和对 DOM的支持情况为准。
六、小结
JavaScript是一种专为与网页交互而设计的脚本语言,由下列三个不同的部分组成:
ECMAScript,由 ECMA-262定义,提供核心语言功能;
文档对象模型(DOM),提供访问和操作网页内容的方法和接口;
浏览器对象模型(BOM),提供与浏览器交互的方法和接口。
XML(可扩展标记语言)和HTML(超文本标记语言)是类似的(XML,Extensible Markup Language;HTML,HyperText Markup Language)
-
区别:
HTML:它是一种描述性语言,就是描述网页长什么样子、有什么内容的一个文本。
XML:它是Internet环境中跨平台的、依赖于内容的技术,是当前处理结构化文档信息的有力工具,适合作为各种存储与共享的通用平台;使用xml 标记语言可以做到数据或数据结构在任何编程语言环境下的共享。然后用xml标记语言进行处理,那样的话,其他人就可以在其他的计算机平台上来访问这些数据或数据结构,甚至可以用其他的编程语言来操作这些数据或数据结构了。
-
联系
html和xml 都是标记语言,都是基于文本编辑和修改的,都是用于操作系统或数据结构,结构上大致相同;都可以通过CSS来改变外观;都可以通过DOM变成方式来访问;
资料网址:XML与HTML的区别与联系