天天看點

[讀書筆記]JavaScript概述

什麼是 javascript?

javascript是一種程式設計語言,它是輕型的、解釋型的,具有面向對象能力的設計語言。

“輕型”:因為它是腳本語言,相對比較簡單,是為非程式員提供的設計語言。腳本一般不具備通用性,所能處理的問題範圍有限。但它有許多特性可以讓它更加靈活,讓程式設計新手更加容易使用。如它的變量不必具有一個明确的類型(無類型語言)。

“解釋型”:還是因為它是腳本語言,腳本多為解釋執行。

“面向對象”:javascript的對象更象perl語言中的關聯數組,它的繼承機制與C++和java中的繼承機制大相徑庭。

javascript與java

javascript不是java的簡化版本,它僅是在句法構成上(如都具有if語言、while循環和&&運算符這樣的結構)和都夠能提供網頁上的可執行内容上與java類似而已。但兩者卻是很好的搭檔,javascript可以控制浏覽器的行為和内容,卻不能繪圖和執行連網。而java雖然不能在總體上控制浏覽器,但是卻可以繪圖、執行連網和多線程。用戶端的javascript可以與嵌入網頁的java applet進行互動,并且能夠對它進行控制,從這一意義上說,javascript真的可以腳本化java。

javascript 的版本

netscape公司的javascript

microsoft公司的jscript

ecma釋出的ecmascript

ecma-262标準,标準化了javascript語言

javascript 1.5 引入異常處理,符合ecma v3。由mozilla和netscape 6實作。

jscript 5.5         基本上相當于javascript 1.5,完全符合ecma v3。由ie5.5和ie6實作。

       ie6實際實作的是jscript5.6,但它和用戶端javascript程式設計相關的部分與5.5無差別

ecma v3          标準化了switch語句、正規表達式和異常入理。與javascript1.5和jscript 5.5 的實作一緻。

javascript 的類别

1、用戶端 javascript

将javascript解釋器嵌入web浏覽器,就形成用戶端javascript,它就是我們通常所說的javascript。

2、其他環境中的javascript

javascript是正常用途的程式設計語言,它能夠嵌入任何應用程式,用來為程式提供腳本的功能。如為web伺服器提供的javascript解釋器,可以用javascript來編寫伺服器端腳本。

javascript 能做什麼?

javascript真正的強大之處在于它支援的基于浏覽器和文檔的對象。用戶端javascript将javascript解釋器的腳本化能力與web浏覽器定義的文檔對象模型(document object model,dom)結合在一起。兩種技術是以一種互相作用的方式結合在一起的,是以産生的結果大于兩部分能力之和,即用戶端javascript使得可執行的内容散布在網絡中的各個地方,它是新一代動态dhtml文檔的核心。

1、控制文檔的外觀和内容

2、對浏覽器的控制

3、與html表單的互動

4、與使用者的互動

5、用cookie讀寫客戶的狀态

javascript不能做什麼?

隻限于與浏覽器相關的任務或與文檔相關的任務,它沒有獨立的語言所必需的特性:

1、除了能夠動态生成浏覽器要顯示的html文檔(包括圖象、表、架構、表單和字型、等等)之外,javascript不具有任何圖形處理能力。

2、出于安全性方面的原因,用戶端javascript不允許對檔案進行讀寫操作。

3、除了能夠引發浏覽器下載下傳任意url所指的文檔以及把html表單的内容發送給伺服器端腳本、電子郵件位址之外,javascript不支援任何形式的聯網技術。

——摘自《javascript權威指南(第四版) 》