定义
JavaScript 是一种具有面向对象能力的、解释型的程序设计语言。更具体一点,它是基 于对象和事件驱动并具有相对安全性的客户端脚本语言。因为他不需要在一个语言环境下运 行,而只需要支持它的浏览器即可。它的主要目的是,验证发往服务器端的数据、增加 Web 互动、加强用户体验度等。
关键字:
- 面向对象
- 解释型的程序设计语言
- 事件驱动
- 客户端脚本语言
特点
- 松散性
JavaScript 语言核心与 C、C++、Java 相似,比如条件判断、循环、运算符等。但,它 却是一种松散类型的语言,也就是说,它的变量不必具有一个明确的类型。
- 对象属性
JavaScript 中的对象把属性名映射为任意的属性值。它的这种方式很像哈希表或关联数 组,而不像 C 中的结构体或者 C++、Java 中的对象。
- 继承机制
JavaScript 中的面向对象继承机制是基于原型的,这和另外一种不太为人所知的 Self 语 言很像,而和 C++以及 Java 中的继承大不相同。
发展
时间 | 公司 | 事件 | 地位 |
---|---|---|---|
1992 | Nombas | 开发了C--的语言,后改名为ScripEase | 基石 |
1995 | Netscape(网景) | 与Sun公司联手开发了LiveScript的脚本语言,后改为JavaScript | 前身(本身) |
微软 | 再IE3.0发布的时候,搭载了VBScript(JScript) | 克隆版 | |
1997 | 欧洲计算机协会 | 锤炼出ECMA—262,定义为ECMAScript的全新脚本语言 | 标准 |
1998 | 网景 | 推迟以前才推出满足规范的JavaScript1.3 |
|
1998 | 火狐 | 成立仅次于IE的第二大浏览器 | |
之后的几年 | 标准不断发展 | ||
1999 | 微软 | 绑定在系统中的IE浏览器占据绝大部分市场 | |
谷歌 | 开发的源码,简洁的界面,成为第三大浏览器 | ||
苹果 | 通过自己的电子产品,使自己的浏览器在市场占据一席之地 |
PS:
- 其实JavaScript和Java基本没有任何关系,当初网景公司就是为了蹭Java的热度才将LiveScript改为JavaScript的。
- 原来最初还有C--语言,据说是因为名字晦气改名了。
- 在94年那会,打开一个网页需要40s的等待时间,脑补一下你登陆时密码输入错误之后的场景。
ECMA
前边在发展中,我们提到了ECMA,这里我们进行一些简单的了解。
由 ECMAScript-262 定义的 ECMAScript 与 Web 浏览器没有依赖关系。ECMAScript 定 义的只是这门语言的基础,而在此基础之上可以构建更完善的脚本语言。我们常见的 Web 浏览器只是 ECMAScript 实现可能的宿主环境之一。
既然他不依赖于 Web 浏览器,那么他还在哪些环境中寄宿呢?比如:ActionScript、 ScriptEase 等。而他的组成部分有:语法、类型、语句、关键字、保留字、操作符、对象等。
DOM
文档对象模型(DOM,Document Object Model)是针对 XML 但经过扩展用于 HTML 的应 用程序编程接口(API,Application Programming Interface)。
BOM
访问和操作浏览器窗口的浏览器对象模型(BOM,Browser Object Model)。开发人员使 用 BOM 可以控制浏览器显示页面以外的部分。而 BOM 真正与众不同的地方(也是经常会导 致问题的地方),还是它作为 JavaScript 实现的一部分,至今仍没有相关的标准。
结语
知“敌”知己,百战不殆!