【正文】
送給 y 表達(dá)式與操作符 ( cont‘ d) ? 位邏輯運(yùn)算符 amp。amp。 y= World!。 條件 。 }. while(條件 ) {條件為真執(zhí)行 ...。 ? continue 用在 for 或 while 循環(huán)可以跳過(guò)循環(huán)體中剩余的語(yǔ)句,直接 進(jìn)行循環(huán)的下一次迭代 . ? 全局變量和局部變量 對(duì)象模型 ? JavaScript被稱為是“基于對(duì)象的” (而不是面向?qū)ο蟮?) – 有對(duì)象的概念 : 數(shù)據(jù)和操作的封裝 , 但沒(méi)有繼承的概念 ? 從定義的角度看 , JavaScript程序中有兩種對(duì)象 – JavaScript提供的 內(nèi)置對(duì)象 ( builtin object) – 程序中定義的對(duì)象 ? 一個(gè)對(duì)象是一個(gè)由變量、其他對(duì)象或方法組成的一個(gè)集合 . – 在一個(gè)對(duì)象中包含的其他對(duì)象和變量被稱為特性 (property) – 在一個(gè)對(duì)象內(nèi)的函數(shù) (function)稱為這個(gè)對(duì)象的方法 ( method) – 在一個(gè)特定的對(duì)象中的一些特性的序列稱為數(shù)組 , 例如 document對(duì)象中的 image[]. – 多維數(shù)組是由含有數(shù)組特性的對(duì)象數(shù)組構(gòu)造的 . JavaScript 的內(nèi)置 對(duì)象 ? 文檔對(duì)象, HTML文檔及其顯示環(huán)境相聯(lián)的對(duì)象 , 例如 window, document ? 核心語(yǔ)言對(duì)象(全局對(duì)象) – 字符串對(duì)象( String) – 數(shù)學(xué)對(duì)象( Math) – 日期對(duì)象 (Date) – 數(shù)組對(duì)象 (Array) 對(duì)應(yīng)于 HTML文檔及其相關(guān)環(huán)境的對(duì)象 文檔對(duì)象 ? 瀏覽器將這些系統(tǒng)對(duì)象組織成一個(gè)層次結(jié)構(gòu) . – Window, 對(duì)應(yīng)于一個(gè)顯示文檔的窗口 , 這個(gè)層次結(jié)構(gòu)的根 – location, Window對(duì)象的一個(gè)屬性 , 對(duì)應(yīng)于當(dāng)前URL. – history, 又一個(gè)屬性 , 對(duì)應(yīng)于用戶曾經(jīng)訪問(wèn)過(guò)的URL. – document, 又一個(gè)屬性 , 對(duì)應(yīng)所加載的文檔 . –…... JavaScript的文檔對(duì)象模型 h i st o r yl i n k a n ch o r l a ye rp a ssw o r dt e x t a r e at e x tch e ckb o xr a d i osu b m i tr e se tb u tt o nf i l e U p l o a do p t i o nse l e ctfo r ma p p l e t i m a g e a r e ad o c u m e n tl o ca t i o n t o o l b a r 等w i n d o w sJavaScript的文檔對(duì)象模型(cont‘ d) ? 注意:前面的文檔對(duì)象模型只是牽制層次關(guān)系, 不是繼承 層次關(guān)系。 ? 不存在任何方向上對(duì)象到對(duì)象的自動(dòng)消息傳遞,通過(guò)文檔或表單對(duì)象發(fā)送消息給它,所有對(duì)象引用一定是清楚的。 ? 要有一種方法讓 Script指出它要的是哪一個(gè)對(duì)象,這就是對(duì)象引用。 對(duì)象引用( cont‘ d) ? 變量可以寫(xiě)成下面的形式 : – 父對(duì)象 .特性 1[索引 1].特性 2..最后特性 [索引 N] ? 對(duì)象的方法 (method)可以如此引用: – 對(duì)象 ...特性 .方法 (參數(shù)組 ) ? 一個(gè)含有典型特性和方法的對(duì)象的例子 – document 是對(duì)應(yīng)一個(gè) .html文檔的對(duì)象 , 瀏覽器讀進(jìn)文檔后生成 . – 是這個(gè)對(duì)象的一個(gè)方法,輸出帶換行的字符串 – 是該對(duì)象的一個(gè)特性,含有它的 URL Window對(duì)象 : 從瀏覽器程序的角度來(lái)看它 class Window { 瀏覽器執(zhí)行起來(lái)后就創(chuàng)建這樣一個(gè)對(duì)象 Location location。 History history。 String prompt(String)。 指向自己 Window self。 Window open(String, String)。 ... } – 網(wǎng)頁(yè)中的 JavaScript就是在這個(gè)對(duì)象的環(huán)境中執(zhí)行的 , 可以引用這個(gè)對(duì)象的變量 , 調(diào)用函數(shù)等 . – 上述只是 Window對(duì)象的 20個(gè)屬性 ,10個(gè)方法和 5個(gè)事件處理過(guò)程的一部分 Window對(duì)象 : 從瀏覽器程序的角度來(lái)看它 ? alert(…) 和 (…)是等價(jià)的 ? var newwin = open(“someURL”, “MyNewWindow”) 將打開(kāi)一個(gè)新瀏覽器窗口 ,并將一個(gè)指定的內(nèi)容讀進(jìn)新窗口 . ? 在原始窗口中然后可用 newwin來(lái)操作新的窗口 . ? 在新的窗口中 , JavaScript可用 opener來(lái)和原始窗口交流 . ? 只能 close自己打開(kāi)的窗口 ! (不是每個(gè)瀏覽器都這樣 smart !) 舉例 : TITLEOpen another window with JavaScript/TITLE SCRIPT Language=JavaScript x = open(,NewWin) = Hello, new fellow ! This is from your creator. /SCRIPTBODY H3This is a text in original window/H3/BODY TITLEOpen another window with JavaScript/TITLE SCRIPT Language=JavaScript = Hello, my creator ! alert(The window is to beclosed)。 /SCRIPT BODYH3This is a text in new window/H3/BODY 用戶對(duì)象的定義 ? JavaScript定義“類” , “函數(shù)”的語(yǔ)法是一樣的 , 而且這樣的函數(shù)就成了該類的構(gòu)造函數(shù) ! ? 用戶用函數(shù)定義來(lái)定義類 , 然后用 new語(yǔ)句創(chuàng)建該類的一個(gè)實(shí)例 HEADscript function add() { = + 。 = 6。 = add。 ()。 /script/BODY with 語(yǔ)句 : 程序的簡(jiǎn)便寫(xiě)法 ? 使得引用方法時(shí)可以省略相關(guān)對(duì)象的名字 ? 例如我們常寫(xiě) (….) ? 我們也可以寫(xiě)成 with (document) { write(….) } ? 如果語(yǔ)句很多 , 顯然就有意義了 . 對(duì)象與數(shù)組 ? JavaScript將對(duì)象也看成是一個(gè)數(shù)組 . 如果 x是一