4
4
5
5
## 什么是 JavaScript?
6
6
7
- ** JavaScript** 最初的目的是为了“** 让网页动起来 ** ”。
7
+ ** JavaScript** 最初的目的是为了“** 赋予网页生命 ** ”。
8
8
9
9
这种编程语言我们称之为** 脚本** 。它们可以写在 HTML 中,在页面加载的时候会自动执行。
10
10
13
13
这方面,JavaScript 和 [ Java] ( http://en.wikipedia.org/wiki/Java ) 有很大的区别。
14
14
15
15
``` smart header="Why <u>Java</u>Script?"
16
- JavaScript 在刚诞生的时候,它的名字叫 “LiveScript”。但是因为当时 Java 很流行,所以决定将一种新语言定位为 Java 的“弟弟”会有所帮助 。
16
+ JavaScript 在刚诞生的时候,它的名字叫 “LiveScript”。但是因为当时 Java 很流行,所以决定将一种新语言定位为 Java 的“弟弟”会有助于它的流行 。
17
17
18
18
随着 JavaScript 的发展,它已经变成了一门独立的语言,同时也有了自己的语言规范 [ECMAScript](http://en.wikipedia.org/wiki/ECMAScript)。现在,它和 Java 之间没有任何关系。
19
19
```
@@ -22,11 +22,11 @@ JavaScript 在刚诞生的时候,它的名字叫 “LiveScript”。但是因
22
22
23
23
浏览器中嵌入了 JavaScript 引擎,有时也称作 JavaScript 虚拟机。
24
24
25
- 不同的引擎有不同的名字 ,例如:
25
+ 不同的引擎有不同的“代号” ,例如:
26
26
27
27
- [ V8] ( https://en.wikipedia.org/wiki/V8_(JavaScript_engine) ) -- Chrome 和 Opera 中的 JavaScript 引擎。
28
28
- [ SpiderMonkey] ( https://en.wikipedia.org/wiki/SpiderMonkey ) -- Firefox 中的 JavaScript 引擎。
29
- - ... 也有一些其他的 JavaScript 引擎,例如, “Trident” 和 “Chakra” 是不同版本 IE 的 JavaScript 引擎 ,“ChakraCore” 是 Microsoft Edge 的 JavaScript 引擎 ,“Nitro” 和 “SquirrelFish” 是 Safari 的 JavaScript 引擎, 等等。
29
+ - ... 还有其他一些代号,像 “Trident”, “Chakra”用于不同版本的 IE ,“ChakraCore”用于 Microsoft Edge,“Nitro”和 “SquirrelFish”用于 Safari 等等。
30
30
31
31
上面这些很容易记忆,因为经常出现在网上关于开发的文章中。我们也会这样用。例如:某个新的功能,如果 JavaScript 引擎 V8 是支持的,那么我们可以认为这个功能在 Chrome 和 Opera 中可以正常运行。
32
32
@@ -70,10 +70,10 @@ JavaScript 的能力依赖于它执行的环境。例如:[Node.js](https://wik
70
70
JavaScript 有很多方式和设备的照相机/麦克风交互,但是这些都需要提前获得用户的授权许可。所以,JavaScript 并不会偷偷地通过你的摄像头观察你,更不会把你的信息发送到[ 美国国家安全局] ( https://en.wikipedia.org/wiki/National_Security_Agency ) 。
71
71
- 不同的浏览器标签页之间基本彼此不相关。有时候,也会有一些关系。例如,通过 JavaScript 打开另外一个新的标签页。但即使在这种情况下,如果两个标签页打开的不是同一个网站(域名、协议或者端口任一不相同的网站),他们都不能够相互通信。
72
72
73
- 这就是 “同源策略”。为了解决不同标签页交互的问题,两个同源的网站必须** 都** 包含一些特殊的 JavaScript 代码,才能够实现数据交换。
73
+ 这就是“同源策略”。为了解决不同标签页交互的问题,两个同源的网站必须** 都** 包含一些特殊的 JavaScript 代码,才能够实现数据交换。
74
74
75
75
这个限制也是为了用户的信息安全。例如,用户打开的 ` http://anysite.com ` 网页的 JavaScript 不能访问 ` http://gmail.com ` (另外一个标签页打开的网页)也不能从那里窃取信息。
76
- - JavaScript 通过互联网可以很容易地和服务器 (当前网页域名的服务器)通讯。但是从其他的服务器中获取数据的功能是受限的,需要服务器(在 HTTP 头中)添加某些参数。这也是为了用户的数据安全。
76
+ - JavaScript 通过互联网可以轻松地和服务器 (当前网页域名的服务器)通讯。但是从其他的服务器中获取数据的功能是受限的,需要服务器(在 HTTP 头中)添加某些参数。这也是为了用户的数据安全。
77
77
78
78
![ ] ( limitations.png )
79
79
@@ -117,5 +117,5 @@ JavaScript 的能力依赖于它执行的环境。例如:[Node.js](https://wik
117
117
## 总结
118
118
119
119
- JavaScript 最开始是为浏览器设计的一门语言,但是现在也可以在其它的环境中运行。
120
- - 现在,JavaScript 是一门在浏览中使用最广 、并且能够很好集成 HTML/CSS 的语言。
120
+ - 现在,JavaScript 是一门在浏览器中使用最广 、并且能够很好集成 HTML/CSS 的语言。
121
121
- 有很多其他的语言可以编译成 JavaScript,这些语言还提供更多的功能。最好要了解一下这些语言,至少需要在掌握 JavaScript 之后简单地看一下。
0 commit comments