講到數(shù)組會(huì)有人問(wèn),什么是數(shù)組?數(shù)組就是有序數(shù)據(jù)的集合,在JavaScript中的數(shù)組元素允許屬于不同的數(shù)據(jù)類型,用數(shù)組名和下標(biāo)就可以唯一地確定數(shù)組中的元素。接下來(lái)將會(huì)詳細(xì)的講解一下JavaScript數(shù)組對(duì)象。
數(shù)組是具有相同數(shù)據(jù)類型的變量集合,這些變量都可以通過(guò)檢索進(jìn)行訪問(wèn)。數(shù)組中的變量稱為數(shù)組的元素,數(shù)組能夠容納元素的數(shù)量稱為數(shù)組的長(zhǎng)度。數(shù)組中的每一個(gè)元素都具有唯一的索引(下標(biāo))與其相對(duì)應(yīng),在JavaScript中,數(shù)組的索引從零開(kāi)始。 數(shù)組對(duì)象使用Array,新建數(shù)組對(duì)象有三種方法。 方法一:var 數(shù)組名 = new Date();//新建一個(gè)長(zhǎng)度為0的數(shù)組 方法二:var 數(shù)組名 = new Date(n);//新建一個(gè)長(zhǎng)度為n的數(shù)組 方法三:var 數(shù)組名 = new Date(元素1,元素2,元素3,…);//新建一個(gè)指定長(zhǎng)度的數(shù)組并賦值 |
數(shù)組對(duì)象屬性的應(yīng)用
在JavaScript中數(shù)組對(duì)象的屬性主要有三個(gè): constructor:返回對(duì)創(chuàng)建對(duì)象的數(shù)據(jù)函數(shù)的引用; | length:設(shè)置或返回?cái)?shù)組中的元素的數(shù)目; | prototype:使開(kāi)發(fā)者有能力向?qū)ο筇砑訉傩院头椒?/span> |
1.constructor constructor屬性返回對(duì)創(chuàng)建對(duì)象的數(shù)據(jù)函數(shù)的引用,其語(yǔ)法格式如下: 示例: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>數(shù)組對(duì)象的學(xué)習(xí)</title> </head> <body> <script type="text/javascript"> var myArray1 = new Array(); if(myArray1.constructor==Array){ document.write("這是數(shù)組對(duì)象"); } if(myArray1.constructor==Boolean){ document.write("這是布爾對(duì)象"); } if(myArray1.constructor==Date){ document.write("這是日期對(duì)象"); } if(myArray1.constructor==String){ document.write("這是字符串對(duì)象"); } </script> </body> </html> |
顯示結(jié)果: 
圖1 數(shù)組對(duì)象的constructor屬性結(jié)果 2. length Length返回?cái)?shù)組元素中元素的數(shù)目,其語(yǔ)法格式如下: 示例: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>數(shù)組對(duì)象的學(xué)習(xí)</title> </head> <body> <script type="text/javascript"> var arr = new Array(3); arr[0] = "xiaozhan" arr[1] = "zhangyunlei" arr[2] = "zhangjie" document.write("數(shù)組的長(zhǎng)度:" + arr.length); document.write("<br />"); arr.length=5; document.write("設(shè)置之后的長(zhǎng)度:" + arr.length); </script> </body> </html> |
顯示結(jié)果: 
圖2 數(shù)組對(duì)象的length屬性結(jié)果 3.prototype Prototype屬性可以對(duì)對(duì)象田間屬性和方法。其語(yǔ)法格式如下: Object,prototype.name = value; |
示例: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>數(shù)組對(duì)象的學(xué)習(xí)</title> </head> <body> <script type="text/javascript"> Array.prototype.outAll = function(ar){ for(var i=0;i<this.length;i++){ document.write(this[i]); document.write(ar); } document.write("<br>"); } var arr = new Array(1,2,3,4,5,6,7,8,9); arr.outAll(""); </script> </body> </html> |
顯示結(jié)果: 
圖3 數(shù)組對(duì)象的prototype屬性結(jié)果 在JavaScript中,有大量的數(shù)組常用的操作方法,比如合并數(shù)組、刪除數(shù)組元素、添加數(shù)組元素等。只有不斷地運(yùn)用這些方法才能熟練的掌握。在這里給大家展示一下數(shù)組對(duì)象方法表,可幫助大家快速查找需要用到的方法。 方法 | 描述 | concat() | 連接兩個(gè)或更多的數(shù)組,并返回結(jié)果。 | pop() | 刪除并返回?cái)?shù)組的最后一個(gè)元素 | join() | 把數(shù)組的所有元素放入一個(gè)字符串。元素通過(guò)指定的分隔符進(jìn)行分隔 | push() | 向數(shù)組的末尾添加一個(gè)或更多元素,并返回新的長(zhǎng)度。 | reverse() | 顛倒數(shù)組中元素的順序。 | slice() | 從某個(gè)已有的數(shù)組返回選定的元素 | shift() | 刪除并返回?cái)?shù)組的第一個(gè)元素 | sort() | 對(duì)數(shù)組的元素進(jìn)行排序 | splice() | 刪除元素,并向數(shù)組添加新元素 | toString() | 把數(shù)組轉(zhuǎn)換為字符串,并返回結(jié)果 | toSource() | 返回該對(duì)象的源代碼 | toLocaleString() | 把數(shù)組轉(zhuǎn)換為本地?cái)?shù)組,并返回結(jié)果 | unshift() | 向數(shù)組的開(kāi)頭添加一個(gè)或更多元素,并返回新的長(zhǎng)度 | valueOf() | 返回?cái)?shù)組對(duì)象的原始值 |
JavaScript中數(shù)組可以用一個(gè)變量名存儲(chǔ)所有的值,并且可以用變量名訪問(wèn)任何一個(gè)值。因?yàn)閿?shù)組中的每個(gè)元素都有自己的的ID,可以方便它可以很容易地被訪問(wèn)到,所以學(xué)會(huì)數(shù)組對(duì)象的屬性和常用方法,可以減少查找數(shù)據(jù)和儲(chǔ)存數(shù)據(jù)的工作量。 主 編 | 王楠嵐 責(zé) 編 | 程 才
|