JavaScript/介绍
Javascript 是一种以 ECMAScript 为语言标准、形式化的、解释执行的编程语言。Javascript 引擎负责解释执行 Javascript,引擎最常见的形式是嵌入在浏览器中用于执行网页中的 Javascript,但也可以嵌入 Javascript 运行环境(如 node),用来执行任意 Javascript 文件。
第一个 Javascript 引擎由网景公司开发出来,用于嵌入 Web 浏览器。V8 是一种为了 Google Chrome 浏览器而开发的 Javascript 引擎,它也可以用作独立的解释器。Adobe Flash 使用叫做 ActionScript 的 Javascript 引擎来开发 Flash 程序。
初步认识
[编辑]- 更常见的JavaScript是用于客户端的网络编程。
- 它的确切名称是ECMAScript。
- 它是由网景通讯公司(现在为Mozilla基金会的)研发的。
- JavaScript不是Java。
Java与JavaScript僅僅都在语法上承襲C語言的風格,但两者互不相干。 - JavaScript不是JScript。
JScript和JavaScript的应用范围相似,但两者也是互不相干的。 - JavaScript不只是网页的编程语言,它和其他编程语言一样复杂,甚至更复杂。
与Java的联系
[编辑]JavaScript与Java是两种不同的语言,就像印度和印度尼西亚的关系一样。尽管JavaScript跟Java在名字上有着相同的开头,容易令人产生联想。但它们是出自不同的公司,源自不同的目的。网景通讯公司研发了JavaScript而太阳计算机系统公司研发了Java。JavaScript在现在多用于浏览器端的各种应用,而Java则在如今成为服务器端应用的重头语言。JavaScript与Java在语法上有些相似,但这只是因为他们的语法风格都袭自C语言。接下来的一节假定你具有一定编程方面的背景知识,如果你愿意你可以直接进入下一节。
Java 中的变量具有静态的类型(例如:整数或字符串),它在程序的生命周期中保持不变。而在 JavaScript 中,变量是动态类型的,在程序的生命周期中可以更改。Java 中的变量必须在使用之前声明,而在 JavaScript 中,引用未赋值的变量会得到undefined
。
Java 拥有大量的库,可供导入程序中使用。JavaScript 不提供任何方式来导入库或外部 JavaScript 代码。如果需要其他功能,例如:V8引擎提供的一些基本功能,和许多 Web 浏览器中的文档对象模型,则 JavaScript 引擎需要在ECMAScript语言标准上做进一步的扩展。
Java 包含类和对象实例,而 JavaScript 使用原型。
在Java中,要输出“Hello world!”,代码是:
System.out.println("Hello world!");
在JavaScript中则是:
document.write("Hello world!");
本书的受众
[编辑]本书假设您在使用计算机,Web浏览器,文本编辑器和软件开发环境方面具有丰富的知识和经验。由于您不会在本书中学习 HTML,CSS,Java 或网站设计等相关内容,因此请查阅适当的书籍以了解这些主题。
版本历史
[编辑]版本 | 说明 | 实现 |
---|---|---|
JavaScript1.0 | 原始版本,基本废弃。 | 由Netscape 2 实现。 |
JavaScript1.1 | 引入真正的Array数组,消除了大量错误。 | 由Netscape 3 实现。 |
JavaScript1.2 | 引入switch语句、正规表达式和大量新特性,基本上符合ECMAv1。 | 由Netscape 4 实现。 |
JavaScript1.3 | 修正了不兼容性,符合ECMAv1。 | 由Netscape 4.5 实现。 |
JavaScript1.4 | 只有Netscape 服务器产品 实现。 | |
JavaScript1.5 | 引入了异常处理,符合ECMAv3。 | 由Mozilla和Netscape 6 实现。 |
JavaScript1.6 | 引入E4X、Array的item location methods和取代方法、Array generic、String generic。 | |
JavaScript1.7 | 引入generator、取代器、Array comprehensions、let关键词、解构赋值(Destructuring assignment) |