<!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> <title>數組的方法</title> </head> <body> <script type="text/javascript"> //concat() 方法用於串連兩個或多個數組。 //該方法不會改變現有的數組,而僅僅會返回被串連數組的一個副本。 //arrayObject.concat(arrayX,arrayX,......,arrayX) //arrayX必需。該參數可以是具體的值,也可以是數組對象。可以是任意多個。 var a = [1,2,3]; var b = a.concat(4,5); var c = ['jack','jonhn','tom']; var d = ['jim','111cn.net']; var e = c.concat(d); document.write(a+"<br/>"); // 1,2,3 document.write(b+"<br/>"); //1,2,3,4,5 document.write(e+"<br/>"); //join() 方法用於把數組中的所有元素放入一個字串。元素是通過指定的分隔字元進行分隔的。 //arrayObject.join(separator) //separator可選。指定要使用的分隔字元。如果省略該參數,則使用逗號作為分隔字元。 var a1 = [1,2,3]; document.write("join方法<br/>"+a1.join()+"<br/>"); var b1 = [1,2,3]; document.write(b1.join(".")+"<br/>"); //使用分隔字元來分隔數組中的元素,輸出1.2.3 document.write("join()的傳回值類型為:"+typeof(a1.join())+"<br/>"); //pop() 方法用於刪除並返回數組的最後一個元素。 //arrayObject.pop() //建立一個數組,然後刪除數組的最後一個元素。請注意,這也會改變數組的程度: var a2 = [1,2,3]; var b2 = a2.pop(); document.write(b2+"<br/>"); //返回數組最後一個元素 3 document.write(a2+"<br/>"); //原有數組已經發生改變,去掉最後一個元素,返回 1,2 //push() 方法可向數組的末尾添加一個或多個元素,並返回新的長度。 //arrayObject.push(newelement1,newelement2,....,newelementX) //newelement1必需。要添加到數組的第一個元素。 //newelementX可選。可添加多個元素。 var a3 = [1,2,3]; var b3 = a3.push("111cn.net"); document.write(b3+"<br/>"); //輸出新的數組長度 4 document.write(a3+"<br/>"); //原來的數組已經改變,1,2,3,111cn.net //reverse() 方法用於顛倒數組中元素的順序。 //arrayObject.reverse() 該方法會改變原來的數組,而不會建立新的數組。 var a4 = [1,2,3]; var b4 = a4.reverse(); document.write(b4+"<br/>"); //數組倒序 3,2,1 document.write(a4+"<br/>"); //數組已經發生改變,並且a4 === b4; document.write(a4 === b4); //true //shift() 方法用於把數組的第一個元素從其中刪除,並返回第一個元素的值。 //arrayObject.shift() //數組原來的第一個元素的值。 //如果數組是空的,那麼 shift() 方法將不進行任何操作,返回 undefined 值。請注意,該方法不建立新數組,而是直接修改原有的 arrayObject。 var a5 = [1,2,3]; var b5 = a5.shift(); document.write("<br/>"); document.write(b5+"<br/>"); //返回第一個 1 document.write(a5+"<br/>"); //數組a5已經發生變化,返回去掉第一個 2,3 //unshift() 方法可向數組的開頭添加一個或更多元素,並返回新的長度。跟pushu添加的順序剛好相反 //arrayObject.unshift(newelement1,newelement2,....,newelementX) //newelement1必需。向數組添加的第一個元素。newelementX可選。可添加若干個元素。 //IE 7及以下無法正確運行 var a6 = ['a','b','c']; var b6 = a6.unshift('d'); document.write(b6+"<br/>"); //返回新的長度 4 document.write(a6+"<br/>"); //原來的數組已經改變,輸出 d,a,b,c //slice() 方法可從已有的數組中返回選定的元素。 //arrayObject.slice(start,end) //start必需。規定從何處開始選取。如果是負數,那麼它規定從數組尾部開始算起的位置。也就是說,-1 指最後一個元素,-2 指倒數第二個元素,以此類推。 //end可選。規定從何處結束選取。該參數是數組片斷結束處的數組下標。如果沒有指定該參數,那麼切分的數組包含從 start 到數組結束的所有元素。如果這個參數是負數,那麼它規定的是從數組尾部開始算起的元素。 //返回一個新的數組,包含從 start 到 end (不包括該元素)的 arrayObject 中的元素。不會改變原來數組,而是返回一個子數組 var a7 = ['a','b','c']; var b7 = a7.slice(1,3); document.write(b7+"<br/>"); //返回新的數組 b,c document.write(a7+"<br/>"); //原來的數組不變 a,b,c //splice() 方法向/從數組中添加/刪除項目,然後返回被刪除的項目。該方法會改變原始數組。 //arrayObject.splice(index,howmany,item1,.....,itemX) //index必需。整數,規定添加/刪除項目的位置,使用負數可從數組結尾處規定位置。 //howmany必需。要刪除的項目數量。如果設定為 0,則不會刪除項目。 //item1, ..., itemX可選。向數組添加的新項目。 var a8 = ['a','b','c','d']; var b8 = a8.splice(2,0,"caibaojian") document.write(a8+"<br/>"); //輸出 a,caibaoijan,b,c,d //alert(b8); var c8 = a8.splice(1,3); //document.write(c8+"<br/>"); document.write(a8); //sort() 方法用於對數組的元素進行排序。 //arrayObject.sort(sortby) //sortby可選。規定排序次序。必須是函數。 //傳回值 對數組的引用。請注意,數組在原數組上進行排序,不產生副本。 var a9 = ['a','f','h','c']; var b9 = a9.sort(); var c9 = [1,100,40,30,104,1000,4]; var d9 = c9.sort(); document.write("<br/>"+b9+"<br/>"); //a,c,f,h 按照字母輸出 document.write(a9+"<br/>"); //原來的數組已經變化,a,c,f,h 按照字母順序輸出 document.write(d9+"<br/>"); //1,100,1000,104,30,4,40 數字沒有按照大小輸出,需要自訂一個順序 function sortNumber(a,b) { return a - b } document.write(c9.sort(sortNumber)+"<br/>"); //1,4,30,40,100,104,1000 //toSource() 方法表示對象的原始碼。 //該原始值由 Array 對象派生的所有對象繼承。 //toSource() 方法通常由 JavaScript 在後台自動調用,並不顯式地出現在代碼中。 //只有 Gecko 核心的瀏覽器(比如 Firefox)支援該方法,也就是說 IE、Safari、Chrome、Opera 等瀏覽器均不支援該方法。 //object.toSource() //toString() 方法可把數群組轉換為字串,並返回結果。 //arrayObject.toString() //傳回值:arrayObject 的字串表示。傳回值與沒有參數的 join() 方法返回的字串相同。 var a11 = ['a','b','c','d']; var b11 = a11.toString(); document.write(b11+"<br/>"); document.write("toString的傳回值類型為:"+typeof(b11)); //arrayObject.toLocaleString() //valueOf() 方法返回 Array 對象的原始值。 //arrayObject.valueOf() </script> <a href="http://111cn.net">雲棲社區網</a> </body> </html> |