JavaScript進階程式設計(1)簡介

來源:互聯網
上載者:User

標籤:顯示器   曆史   自訂對象   建立   svg   事件   request   分組   遍曆   

本章內容:JavaScript曆史回顧,JavaScript是什麼,JavaScript與ECMAScript的關係,JavaScript的不同版本

一個完整的JavaScript實現應該由下列三個不同的部分組成。

  • 核心 (ECMAScipt)
  • 文件物件模型(DOM)
  • 瀏覽器物件模型(BOM) 
  1.  ECMAScript

由ECMA-262定義的ECMAScript與Web瀏覽器沒有依賴關係。實際上,這門語言本身並不包含輸入和輸出定義。它定義的只是這門語言的基礎,而在此基礎之上可以構建更完善的指令碼語言。Web瀏覽器知識ECMAScript實現可能的宿主環境之一。宿主環境不僅提供基本的ECMAScipt實現,同時也會提供該語言的擴充,以便語言與環境之間對接互動。其他宿主環境包括Node(一種服務端JavaScript平台)和Adobo Flash。

ECMAScipt是由文法、類型、語句、關鍵字、保留字、操作符、對象這些部分組成。就是對實現該標準規定的各個方面內容的語言的描述。

       2. 文件物件模型(DOM)

文件物件模型(DOM,Document Object Model)是針對XML但經過擴充用於HTML的API(API,Application Programming Interface)。DOM把整個頁面映射為一個多層節點結構。HTML或XML頁面中的每個組成部分都是某種類型的節點,這些節點又包含著不同類型的資料。看下面這個例子:、

<html>  <head>    <title>Sample Page</title> </head> <body>    <p>Hello World!</p> </body></html

 通過DOM建立的這個表示文檔的樹形圖,開發文員獲得了控制了控制頁面內容和結構的主動權。藉助DOM提供的API,開發人員可以輕鬆的刪除,添加,替換或修改任何節點。

 1:為什麼要使用DOM

  保持Web跨平台的天性  對Netscape和微軟加以控制,防止出現Web開發領域技術上兩強割據,瀏覽器互不相容的局面。

 2:DOM層級

 DOM並不只是針對JavaScript的,很多別的語言也都實現了DOM。在Web瀏覽器中。基於ECMAScript實現的DOM已經成為JavaScript語言的重要組成部分

DOM0級(DOM Level 0) 

          實際上,DOM0級是不存在的,只是DOM曆史座標中的一個參數點而已

          指的是Internet Explorer4.0和Netscape Navigator4.0最初支援的DHTML。

DOM1級(DOM Level 1)

     兩個模組組成:DOM核心(DOM Core)和DOM HTML。

         DOM核心:主要對應基於XML文檔結構,以便簡化對文檔中任意部分的訪問和操作。

         DOM HTML:在DO核心的基礎上加以擴充,添加了針對HTML的對象和方法。

DOM2級(DOM Level 2)

   引入了新模組也給出了眾多新類型和新介面的定義。

         DOM視圖:定義了跟蹤不同文檔視圖的介面;

         DOM事件:定義了事件和事件處理的介面;

         DOM樣式:定義了基於CSS為元素應用樣式的介面; 

         DOM遍曆和範圍:定義了遍曆和操作文檔樹的介面。

DOM3級(DOM Level 3)

  以統一方式載入和儲存文檔的方法——在DOM載入和儲存模組中定義;

  新增了驗證文檔的方法——在DOM驗證模組中定義。

其他DOM標準

 下面這些語言都是基於XML的,每種語言的DOM標準都添加了與特定語言相關的新方法和新介面:

  SVG(可伸縮向量圖)1.0; MathML(數學標記語言)1.0;SMIL(同步多媒體整合語言)。

 Mozilla的XUL(使用者介面語言)雖然也有自己的DOM實現,但是只有上面幾種語言是W3C的推薦標準。

Web瀏覽器對DOM的支援

      3.瀏覽器物件模型(DOM)

  瀏覽器物件模型(DOM Browser Object Model):支援可以訪問和操作瀏覽器視窗,開發人員使用BOM可以控制瀏覽器顯示的頁面以外的部分。

 從根本上講,BOM只處理瀏覽器視窗和架構,人們習慣上也把所有針對瀏覽器的JavaScript擴充算作BOM的一部分。下面就是一些這樣的擴充

  1. 彈出新瀏覽器視窗的功能;
  2. 移動、縮放和關閉瀏覽器視窗的功能;
  3. 提供瀏覽器所詳細資料的navigator對象;
  4. 提供瀏覽器所載入頁面的詳細資料的location對象;
  5. 提供使用者顯示器解析度詳細資料的screen對象;
  6. 對cookies的支援;
  7. 想XMLHttpRequest和IE的ActiveXobject這樣的自訂對象。

4.JavaScript版本

 

 小結:

     JavaScript是一種專為網頁互動設計的指令碼語言。由以下三個不同的部分組成:

     ECMAScript,由ECMA-262定義,提供核心語言功能;

     文件物件模型(DOM),提供訪問和操作網頁內容的方法和介面;

     瀏覽器物件模型(BOM),提供與瀏覽器互動的方法和介面;

這三個組成部分,在當前五個主要瀏覽器(IE、Firefox、Chrome、Safari、Opera)中都得到不同程度的支援。都能實現某些眾所周知的共同特性,但其他特性還是會因瀏覽器而異。

 

JavaScript進階程式設計(1)簡介

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.