Array 陣列
var myArray = new Array(); //建立一個空數組
var myArray = new Array(5); //建立一個大小為5數組,此時如果直接引用myArray[0],會傳回undefined 。
var myArray = new (0,1,2,3); //建立初始值為0123的陣列
var myArray = [0,1,2,3]; //建立初始值為0123陣列
數組只要創建了,其長度是可以改變的,例如,創建了長度為5的數組,可以對其下標為5、6等賦值,這時長度會自動跟著改變。
但如果只是聲明var myArray;則不能引用數組中的任何元素,否則出錯。
這裡要注意new Array(5)和new Array("5")的區別,前者代表創建一個大小為5的數組,後者代表創建大小為1,初始值為字串5的數組。
JavaScript中的陣列可以存放不同類型的數據,例如一個陣列可以同時儲存整數和字串等。
陣列的屬性有:
constructor:引用陣列的建構子
length:傳回陣列元素的個數,如果在建立陣列時指定了陣列的大小,則無論陣列是否賦值,都會傳回這個大小。
prototype:用於定義陣列時新增新的屬性和方法。
陣列的方法有:
concat(合併陣列),pop(),刪除陣列的最後一個元素,長度自動減少1,reverse,push,shift等。
Object對象
它是一切對象的父對象,所有的對像都繼承於它,因此它擁有的屬性和方法,其他對像都有。
Object的屬性:
constructor:引用陣列的建構子
prototype:新增新的屬性與方法。
Object的方法有:
valueOf():傳回物件的原始值
toString():用於將函數轉換為字串下方是object物件的範例:
<HTML> <HEAD> <TITLE>使用Object的示例</TITLE> <SCRIPT LANGUAGE="JavaScript" TYPE="text/javascript"> var obj1=new Object(false); 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>"); var obj2=new Object("Hello World!"); 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>
執行結果: false)
obj1.constructor= function Boolean() { [native code] }
obj1.valueOf()=false
obj1.toString()=false
function String() { [native code] }
obj2.valueOf()=Hello World!
obj2.toString()=Hello World!
window ator
是目前瀏覽器視窗,history等子物件。
window物件的屬性:
closed,document,frames,history,length(目前視窗的框架的數量),location,name,opener,
status(狀態列),self(目前視窗),top(最上面一層視窗)。
包含的方法也很多,如alert,confirm,blur等
navigator物件
用於獲取當前瀏覽器的各種信息,主要用於判斷客戶端使用什麼瀏覽器。範例如下:
<HTML> <HEAD> <TITLE>navigator示例</TITLE> <HEAD> <BODY> <script language="javascript"> document.write("浏览器代码名称:"+navigator.appCodeName+"<BR>"); 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>
瀏覽器名稱:Microsoft Internet Explorer
瀏覽器版本號:4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET CLR 2.0.50727;
.NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; .NET CLR 1.1.4322; InfoPath.2) :Win32
外掛程式數:0
使用者代理程式:Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET CLR 2.0.50727;
.NET CLR 2.0.50727;
.NET CLR 3.0.253.253. ; .NET CLR 1.1.4322; InfoPath.2)
此外還有location對象,history對象,screen對象