js基礎(chǔ)術(shù)語(yǔ)和概念總結(jié)_第1頁(yè)
js基礎(chǔ)術(shù)語(yǔ)和概念總結(jié)_第2頁(yè)
js基礎(chǔ)術(shù)語(yǔ)和概念總結(jié)_第3頁(yè)
js基礎(chǔ)術(shù)語(yǔ)和概念總結(jié)_第4頁(yè)
js基礎(chǔ)術(shù)語(yǔ)和概念總結(jié)_第5頁(yè)
已閱讀5頁(yè),還剩2頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、JavaScript基礎(chǔ)術(shù)語(yǔ)和概念總結(jié)1、 什么是JavaScript ?JavaScript 是一種基于對(duì)象(Object)和事件驅(qū)動(dòng)(Event Driven)并具有安全性能的腳本語(yǔ)言。使用它的目的是與HTML超文本標(biāo)記語(yǔ)言、Java 腳本語(yǔ)言(Java 小程序) 一起實(shí)現(xiàn)在一個(gè)Web 頁(yè)面中鏈接多個(gè)對(duì)象,與Web 客戶交互作用。它的出現(xiàn)使得信息和用戶之間不僅只是一種顯示和瀏覽的關(guān)系,而是實(shí)現(xiàn)了一種實(shí)時(shí)的、動(dòng)態(tài)的、可交式的表達(dá)能力。2、 JavaScript的特點(diǎn)JavaScript 是一種基于對(duì)象和事件驅(qū)動(dòng)并具有相對(duì)安全性的客戶端腳本語(yǔ)言,主要用于創(chuàng)建具有交互性較強(qiáng)的動(dòng)態(tài)頁(yè)面。其具有以下

2、特點(diǎn):1) 基于對(duì)象:JavaScript 是基于對(duì)象的腳本編程語(yǔ)言,能通過(guò)DOM(文檔結(jié)構(gòu)模型)及自身提供的對(duì)象及操作方法來(lái)實(shí)現(xiàn)所需的功能。2) 事件驅(qū)動(dòng):JavaScript 采用事件驅(qū)動(dòng)方式,能響應(yīng)鍵盤事件、鼠標(biāo)事件及瀏覽器窗口事件等,并執(zhí)行指定的操作。3) 解釋性語(yǔ)言:JavaScript 是一種解釋性腳本語(yǔ)言,無(wú)需專門編譯器編譯,而是在嵌入JavaScript 腳本的HTML 文檔載入時(shí)被瀏覽器逐行地解釋,大量節(jié)省客戶端與服務(wù)器端進(jìn)行數(shù)據(jù)交互的時(shí)間。4) 實(shí)時(shí)性:JavaScript 事件處理是實(shí)時(shí)的,無(wú)須經(jīng)服務(wù)器就可以直接對(duì)客戶端的事件做出響應(yīng),并用處理結(jié)果實(shí)時(shí)更新目標(biāo)頁(yè)面。5)

3、動(dòng)態(tài)性:JavaScript 提供簡(jiǎn)單高效的語(yǔ)言流程,靈活處理對(duì)象的各種方法和屬性,同時(shí)及時(shí)響應(yīng)文檔頁(yè)面事件,實(shí)現(xiàn)頁(yè)面的交互性和動(dòng)態(tài)性。6) 跨平臺(tái):JavaScript 腳本的正確運(yùn)行依賴于瀏覽器,而與具體的操作系統(tǒng)無(wú)關(guān)。只要客戶端裝有支持JavaScript 腳本的瀏覽器,JavaScript 腳本運(yùn)行結(jié)果就能正確反映在客戶端瀏覽器平臺(tái)上。7) 開(kāi)發(fā)使用簡(jiǎn)單:JavaScript 基本結(jié)構(gòu)類似C 語(yǔ)言,采用小程序段的方式編程,并提供了簡(jiǎn)易的開(kāi)發(fā)平臺(tái)和便捷的開(kāi)發(fā)流程,就可以嵌入到HTML 文檔中供瀏覽器解釋執(zhí)行。同時(shí)JavaScript 的變量類型是弱類型,使用不嚴(yán)格。8) 相對(duì)安全性:Ja

4、vaScript 是客戶端腳本,通過(guò)瀏覽器解釋執(zhí)行。它不允許訪問(wèn)本地的硬盤,并且不能將數(shù)據(jù)存入到服務(wù)器上,不允許對(duì)網(wǎng)絡(luò)文檔進(jìn)行修改和刪除,只能通過(guò)瀏覽器實(shí)現(xiàn)信息瀏覽或動(dòng)態(tài)交互,從而有效地防止數(shù)據(jù)的丟失。3、 JavaScript和Java的區(qū)別雖然JavaScript和Java有著緊密的關(guān)系,但是確實(shí)由兩家不同的公司開(kāi)發(fā)的不同的兩個(gè)不同產(chǎn)品。Java是 SUN 公司推出的新一代面向?qū)ο蟮某绦蛟O(shè)計(jì)語(yǔ)言,特別適合于 Internet 應(yīng)用程序開(kāi)發(fā);而JavaScript 是Netscape 公司的產(chǎn)品,其目的是為了擴(kuò)展Netscape Navigator 功能,而開(kāi)發(fā)的一種可以嵌入Web 頁(yè)面中的

5、基于對(duì)象和事件驅(qū)動(dòng)的解釋性語(yǔ)言,它的前身是Live Script;而Java 的前身是Oak 語(yǔ)言。其異同點(diǎn)主要是以下幾個(gè)方面:1) 基于對(duì)象和面向?qū)ο螅篔ava是一種真正的面向?qū)ο蟮恼Z(yǔ)言,即使是開(kāi)發(fā)簡(jiǎn)單的程序,必須設(shè)計(jì)對(duì)象。而JavaScript是腳本語(yǔ)言,它是一種基于對(duì)象和事件驅(qū)動(dòng)的編程語(yǔ)言。2) 代碼格式的不同:Java是一種與HTML無(wú)關(guān)的格式,其代碼以字節(jié)代碼的形式保存在獨(dú)立的文檔中。JavaScript 的代碼是一種文本字符格式,可以直接嵌入HTML 文檔中,并且可動(dòng)態(tài)裝載。編寫HTML 文檔就像編輯文本文件一樣方便。4、 JavaScript的基本數(shù)據(jù)類型在JavaScript中

6、的四種基本數(shù)據(jù)類型:數(shù)值(整數(shù)和實(shí)數(shù))、字符串型(用“”或者括起來(lái)的字符或者數(shù)值)、布爾型(true或false表示)和空值。在JavaScript中基本數(shù)據(jù)類型可以是常量,也可以是變量。舉例:1)字符串類型:-轉(zhuǎn)義序列:b 回退 f 換頁(yè) n 換行 r 回車符 t 制表符 單引號(hào) ” 雙引號(hào) 反斜杠 2)數(shù)字類型: 浮點(diǎn)數(shù):12.568,整數(shù):2563)布爾值類型:Boolean:true,false4)空值(Null):代表變量什么也不是5)未定義值(Undefined): var a/變量a 這時(shí)的狀態(tài)5、 JavaScript的變量變量名必須以字母或下劃線開(kāi)始,其他部分可以使用數(shù)字、字

7、母、美元符和下劃線構(gòu)成。JavaScript變量名區(qū)分大小寫,可使用駱駝命名法:變量名以一個(gè)小寫字母開(kāi)始,后面的單詞首字母大寫且沒(méi)有空格。變量名聲明以關(guān)鍵字var開(kāi)始。6、 HTML中如何使用JavaScript?JavaScript的使用分為兩種方式,一種是直接使用,另一種就是通過(guò)事件機(jī)制使用 直接使用 HTML中的javascript代碼塊會(huì)讓瀏覽器的控制程序交給相應(yīng)的javascript解釋器去完成,如果是自定義的函數(shù),javascript是不會(huì)將其執(zhí)行的,除非我們?cè)趈avascript代碼塊中直接調(diào)用了該函數(shù),如:“直接存在”代碼中的Say()函數(shù)一樣,處理函數(shù)外,其他的凡在javas

8、cript代碼塊中存在的javascript語(yǔ)句,都會(huì)被直接解釋并執(zhí)行。 間接使用 針對(duì)javascript中的函數(shù)(自定義和系統(tǒng)自帶)說(shuō)的,通過(guò)javascript的事件機(jī)制實(shí)現(xiàn),其事件的具體體現(xiàn)就是HTML為響應(yīng)這個(gè)功能而在標(biāo)簽中添加的一些屬性,其描述的是發(fā)生在html元素上的某些行為。具體事件如下圖所示:7、 JavaScript的運(yùn)行機(jī)制JavaScript是一種描述性的腳本語(yǔ)言,它與Java或者C#等編譯性語(yǔ)言不同之處在于它不需要進(jìn)行編譯成中間語(yǔ)言,而是由瀏覽器進(jìn)行動(dòng)態(tài)地解析與執(zhí)行。如果不了解JavaScript的運(yùn)行的機(jī)制或者不能掌握J(rèn)avaScript的執(zhí)行順序,那么你就不能很好

9、的駕馭它。那么JavaScript是怎么運(yùn)行的吶?首先,我們先來(lái)了解幾個(gè)重要的術(shù)語(yǔ):1、 代碼塊JavaScript中的代碼塊是指標(biāo)簽分割的代碼片段。例如:Js就是按照代碼塊來(lái)進(jìn)行編譯和執(zhí)行的,注意:代碼塊之間是相互獨(dú)立的,但是變量和方法是共享的。我們運(yùn)行后會(huì)發(fā)現(xiàn)這種情況:上面的代碼中代碼塊一中運(yùn)行報(bào)錯(cuò),但不影響代碼塊二的執(zhí)行,這就是代碼塊間的獨(dú)立性,而代碼塊二中能調(diào)用到代碼一中的變量,則是塊間共享性。2、 聲明函數(shù)與賦值式函數(shù)Js中的函數(shù)定義有2種:聲明式函數(shù)與賦值式函數(shù)聲明式函數(shù)與賦值式函數(shù)的區(qū)別在于:在JS的預(yù)編譯期,聲明式函數(shù)將會(huì)先被提取出來(lái),然后才按順序執(zhí)行js代碼。如果Fn()放在

10、fn()之后的話,則會(huì)出現(xiàn)函數(shù)未定義錯(cuò)誤。3、 預(yù)編譯期與執(zhí)行期Js的解析過(guò)程分為兩個(gè)階段:預(yù)編譯期(預(yù)處理)與執(zhí)行期。預(yù)編譯期JS會(huì)對(duì)本代碼塊中的所有聲明的變量和函數(shù)進(jìn)行處理(類似與C語(yǔ)言的編譯),但需要注意的是此時(shí)處理函數(shù)的只是聲明式函數(shù),而且變量也只是進(jìn)行了聲明但未進(jìn)行初始化以及賦值。舉例說(shuō)明: Fn(); /執(zhí)行結(jié)果:執(zhí)行了函數(shù)2,同名函數(shù)后者會(huì)覆蓋前者 function Fn() /函數(shù)1 alert(執(zhí)行了函數(shù)1); function Fn() /函數(shù)2 alert(執(zhí)行了函數(shù)2); Fn(); /執(zhí)行結(jié)果:執(zhí)行了聲明式函數(shù),在預(yù)編譯期聲明函數(shù)及被處理了,所以即使Fn()調(diào)用函數(shù)放

11、在聲明函數(shù)前也能執(zhí)行。function Fn() /聲明式函數(shù)alert(執(zhí)行了聲明式函數(shù));var Fn = function() /賦值式函數(shù)alert(執(zhí)行了賦值式函數(shù));看完上面幾個(gè)術(shù)語(yǔ)后,相信大家對(duì)js的運(yùn)行機(jī)制又有了新的認(rèn)識(shí),現(xiàn)在我們看個(gè)例子:Fn(); /瀏覽器報(bào)錯(cuò):undefinedfunction Fn() /函數(shù)1alert(執(zhí)行了函數(shù)1);我們上面說(shuō)了JS是按照代碼塊來(lái)順序執(zhí)行的,其實(shí)完整的說(shuō)應(yīng)該是按照代碼塊的預(yù)處理和執(zhí)行的,也就是說(shuō)預(yù)處理的只是執(zhí)行到的代碼塊的聲明函數(shù)和變量,而對(duì)于還未加載的代碼塊是沒(méi)法進(jìn)行預(yù)處理的,這就是邊編譯邊處理的核心所在。小結(jié):js的處理機(jī)制step 1. 讀入第一個(gè)代碼塊。step 2. 做語(yǔ)法分

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論