- 搞定J2EE核心技術與企業應用
- 常建功 王向華編著
- 2160字
- 2018-12-29 13:49:58
4.4 系統內部對象
雖然JavaScript并不是面向對象的編程語言,但通常認為它是基于對象的編程語言,它支持多種對象類型,并可以創建對象實例,通過對象的屬性和方法可以訪問相關對象的功能。本節主要講述JavaScript提供的一系列內置對象,這些內置對象實現了一些通用的功能,開發人員可以直接拿來使用。
4.4.1 Array對象
Array對象用來創建數組,一共有4種方法來定義數組,分別如下:
var myArray = new Array(); //創建一個空的數組 var myArray = new Array(5);//創建一個大小為5的數組 var myArray = new (0,1,2,3);//采用new的方法創建一個包含元素0、1、2、3的數組 var myArray=[0,1,2,3]; //采用方括號的方式創建一個包含元素0、1、2、3的數組
這里需要注意的是new Array(5)和new Array("5")的區別,前者的意思是創建一個大小為5的數組,后者的意思是創建一個包含元素5的數組。數組的起始坐標為0,即new Array(5)表示該數組大小為5,坐標從0開始一直到4。如果對myArray[5]進行賦值,則該數組的長度自動變為6。
數組是沒有類型限制的,即數組中存放的內容可以是任何數據類型。因此數組中也可以存放數組類型,這樣就可以實現多維數組了。
實現多維數組的示例代碼如下:
var myArray =new Array(); myArray [0]=new Array("1","2","3"); myArray [1]=new Array("4","5","6"); myArray [2]=new Array("7","8","9");
既然是對象,那么肯定有屬性和方法,Array對象本身也提供了一些屬性和方法,供開發者使用。Array對象的屬性如表4.10所示。
表4.10 Array對象的屬性

Array對象的方法如表4.11所示。
表4.11 Array對象的方法

4.4.2 Object對象
Object對象是一切對象的父對象,所有的對象都繼承于它,因此它擁有的屬性和方法,其他對象也都擁有。也就是說,如果針對Object對象添加了一些屬性和方法,則其他的對象也同時擁有了這些屬性和方法。
Object對象的屬性如表4.12所示。
表4.12 Object對象的屬性

Object對象的方法如表4.13所示。
表4.13 Object對象的方法

使用Object對象的屬性和方法的示例代碼如下:
<HTML> <HEAD> <TITLE>使用Object對象的示例</TITLE> <SCRIPT LANGUAGE="JavaScript" TYPE="text/javascript"> <!-- var obj1=new Object(false); var obj2=new Object("Hello World!"); document.write("obj1=new Object(false)"+"<BR>") document.write("obj1.constructor="+obj1.constructor+"<BR>"); document.write("obj1.valueOf()="+obj1.valueOf()+"<BR>"); document.write("obj1.toString()="+obj1.toString()+"<BR>"); document.write("obj2=new Object("Hello World!")"+"<BR>") document.write("obj2.constructor="+obj2.constructor+"<BR>"); document.write("obj2.valueOf()="+obj2.valueOf()+"<BR>"); document.write("obj2.toString()="+obj2.toString()+"<BR>"); //--> </SCRIPT> </HEAD> <BODY> </BODY> </HTML>
上述代碼運行后的結果如圖4.10所示。

圖4.10 使用Object對象的屬性和方法的示例
4.4.3 Window對象
Window對象是當前瀏覽器的窗口對象,是所有瀏覽器對象的父對象,它包含了Document、Navigator、Location、History等子對象。
Window對象的屬性如表4.14所示。
表4.14 Window對象的屬性

Window對象的方法如表4.15所示。
表4.15 Window對象的方法

使用Window對象的屬性和方法的示例代碼如下:
<HTML> <HEAD> <TITLE>moveBy() 方法和moveTo() 方法示例</TITLE> <HEAD> <BODY> <FORM name=form1> <INPUT TYPE = BUTTON Value = "向右下移動" onClick =moveBy(10,10)> <INPUT TYPE = BUTTON Value = "向左上移動" onClick =moveBy(-10,-10)> <P> <INPUT TYPE=BUTTON Value="移動到 (10,10)"onClick=moveTo(10,10)> <INPUT TYPE=BUTTON Value="移動到 (-10,-10)"onClick=moveTo(-10,-10)> </FORM> </BODY> </HTML>
上述代碼運行后的結果如圖4.11所示。

圖4.11 使用Window對象的屬性和方法的示例
4.4.4 Navigator對象
Navigator對象用來獲取當前瀏覽器的各種信息,它是Window對象的子對象,主要用于判斷客戶端使用的是什么瀏覽器。
Navigator對象的屬性如表4.16所示。
表4.16 Navigator對象的屬性

Navigator對象的方法如表4.17所示。
表4.17 Navigator對象的方法

使用Navigator對象的屬性和方法的示例代碼如下:
<HTML> <HEAD> <TITLE>使用Navigator對象</TITLE> </HEAD> <BODY> <H2 align=center>顯示瀏覽器信息……</H2> <SCRIPT LANGUAGE = JavaScript TYPE="text/javascript"> <!-- document.write("瀏覽器代碼名稱:"+window.navigator.appCodeName+"<BR>") //訪問Navigator對象時可以用window.navigator,也可以直接用Navigator document.write("瀏覽器名稱:"+navigator.appName+"<BR>") document.write("瀏覽器版本號:"+navigator.appVersion+"<BR>") document.write("是否支持Java:"+navigator.javaEnabled()+"<BR>") document.write("MIME類型數:"+navigator.mimeTypes.length+"<BR>") document.write("操作系統平臺:"+navigator.platform+"<BR>") document.write("插件數:"+navigator.plugins.length+"<BR>") document.write("用戶代理:"+navigator.userAgent+"<BR>") --> </SCRIPT> </BODY> </HTML>
上述代碼運行后的結果如圖4.12所示。

圖4.12 使用Navigator對象的屬性和方法的示例
4.4.5 Location對象
Location對象是一種特殊的鏈接對象,它代表當前窗口中所裝入文檔的URL,通常用于重新裝入新的文檔。
Location對象的屬性如表4.18所示。
表4.18 Location對象的屬性

Location對象的方法如表4.19所示。
表4.19 Location對象的方法

使用Location對象的屬性和方法的示例代碼如下:
<HTML> <HEAD> <TITLE>Location對象方法示例</TITLE> <SCRIPT LANGUAGE = JavaScript TYPE="text/javascript"> <!-- function jump1() { window.location = document.form1.URL_Textbox.value; //獲取用戶輸入的網頁地址 } function jump2() { window.location.replace(document.form1.URL_Textbox.value); } //--> </SCRIPT> </HEAD> <BODY> <DIV align=center> <H1>輸入網頁地址</H1> <FORM NAME = form1> <BR> <INPUT TYPE = TEXT NAME = "URL_Textbox" SIZE = 60> <BR><BR> <INPUT TYPE = BUTTON Value = "跳轉" onClick = "jump1()"> <INPUT TYPE = BUTTON Value = "替換" onClick = "jump2()"> </FORM> </DIV> </BODY> </HTML>
上述代碼運行后的結果如圖4.13所示。

圖4.13 使用Location對象的屬性和方法的示例
4.4.6 History對象
History對象代表瀏覽器的歷史列表,使用戶可以跟蹤窗口中曾經使用過的URL。History對象的屬性如表4.20所示。
表4.20 History對象的屬性

History對象的方法如表4.21所示。
表4.21 History對象的方法

使用History對象的屬性和方法的示例代碼如下:
<HTML> <HEAD> <TITLE>使用History對象</TITLE> <SCRIPT LANGUAGE = JavaScript TYPE="text/javascript"> <!-- function back() { window.history.back() //使用window.history與使用History對象的效果一樣 } function forward() { window.history.forward() } function go() { window.history.go(document.form1.num.value) } //--> </SCRIPT> </HEAD> <BODY> <FORM name=form1> <INPUT TYPE=BUTTON Value="< 上一頁"onClick="back()"> <INPUT TYPE=BUTTON Value="下一頁 >"onClick="forward()"><P> <INPUT TYPE=BUTTON Value="<< 跳轉多頁 >>"onClick="go()"> <INPUT name=num size=2> </FORM> <SCRIPT LANGUAGE = JavaScript TYPE="text/javascript"> <!-- document.write("<B>當前歷史列表的長度為:"+history.length+"</B>") //--> </SCRIPT> </DIV> </BODY> </HTML>
上述代碼運行后的結果如圖4.14所示。

圖4.14 使用History對象的屬性和方法的示例
4.4.7 Screen對象
Screen對象表示用戶屏幕,它提供了屏幕尺寸和顏色深度等信息。
Screen對象的屬性如表4.22所示。
表4.22 Screen對象的屬性

使用Screen對象的屬性和方法的示例代碼如下:
<HTML> <HEAD> <TITLE>使用Screen對象</TITLE> </HEAD> <BODY> <H2 align=center>顯示屏幕信息……</H2> <SCRIPT LANGUAGE = JavaScript TYPE="text/javascript"> <!-- document.write("屏幕允許高度:"+window.screen.availHeight+"<BR>") //訪問Screen對象時可以用window.screen,也可以直接用Screen document.write("屏幕允許寬度:"+screen.availWidth+"<BR>") document.write("顏色深度:"+screen.colorDepth+"<BR>") document.write("屏幕高度:"+screen.height+"<BR>") document.write("屏幕寬度:"+screen.width+"<BR>") --> </SCRIPT> </BODY> </HTML>
上述代碼運行后的結果如圖4.15所示。

圖4.15 使用Screen對象的屬性和方法的示例
- Expert AWS Development
- 愛犯錯的智能體
- 新編計算機圖形學
- 零起點學西門子S7-200 PLC
- Excel 2010函數與公式速查手冊
- Unity Multiplayer Games
- Mastering Geospatial Analysis with Python
- INSTANT VMware vCloud Starter
- MATLAB-Simulink系統仿真超級學習手冊
- Dreamweaver+Photoshop+Flash+Fireworks網站建設與網頁設計完全實用
- Mastering OpenStack(Second Edition)
- Generative Adversarial Networks Projects
- Mastering Android Game Development with Unity
- OSGi原理與最佳實踐
- AI成“神”之日:人工智能的終極演變