1. 程式人生 > >Javascript中的內建物件——Array陣列

Javascript中的內建物件——Array陣列

一、ECMAScript中的Array陣列:
​1.建立陣列的基本方式:
1、使用Array建構函式 — 語法:new Array() — 小括號說明預先知道陣列要儲存的量或者是向其中傳遞項。
2、使用陣列字面量表示法 — 由一對包含陣列項的方括號【】表示,多個數組項之間用逗號,隔開。

二、陣列元素的讀寫:
1、和前面提到的arguments幾乎一樣,同樣使用方括號【】並提供相應的索引。

2、索引是從0開始的正整數。

三、陣列的長度:
1.array.length
2.獲取陣列array的長度
3.返回一個number值
4.通過設定length可以從陣列的末端移除項或向陣列中新增新項 — 一般不建議這樣使用

四、陣列的棧方法:

1.push()
        arrayObject.push(new1,new2,...,) --- 把他的引數順序新增到arrayObject的尾部,並返回新的陣列長度。

 2.unshift()
        arrayObject.unshift(new1,new2,...,) --- 把他的引數順序新增到arrayObject的開頭,並返回新的陣列長度。

 3.pop()
         arrayObject.pop --- 刪除arrayObject 的最後一個元素並返回被刪除的那個元素 。

 4.unshift()
        arrayObject.unshift --- 刪除arrayObject 的第一個元素並返回被刪除的那個元素 。

 5.join()
        arrayObject.join(separator) --- 用於把陣列中的所有元素放入一個字串並返回的是字串。

 6.reverse()
        arrayObject.reverse() --- 用於顛倒陣列中元素的順序並返回一個數組。

7.sort()
        arrayObject.(sortby)  --- 用於對陣列的元素進行排序並返回一個數組。
        說明:1、即使陣列中的每一項都是數值,sort()方法比較的也是字串
                  2、sort()方法可以接收一個比較函式作為引數
                  3、舉個栗子:var arr = [1,3,99,68 ];
                                        arr.sort(function( a, b ){ return a < b});
                                        console.log(arr);

8.concat()
        arrayObject. concat(arrayX,arrayx...) --- 用於連線兩個或多個數組並且返回一個數組。
        舉個栗子:        var arr1 = ["a","b","c"],
                                       arr2 = ["d","e",2,3],
                                       arr3 = [];
                                       arr3 = arr1.concat(arr2);
                                       console.log(arr3);

 9.slice()
        arrayObject.slice(start,end) --- 從已有的陣列中返回選定的元素
        說明:1.start(必要)規定從何從還是選取,如果是負數,用陣列長度減去start值
                  2.end(可選)規定從何處結束選取,是陣列片斷結束處的陣列下標

10.splice()
        1.arrayObject.splice(index ,count) --- 刪除從index處開始的零個或者多個元素,返回含有被刪除的元素的陣列。PS:count是要刪除的數目量,如果是0則不會刪除,如果不設定,則刪除從index開始的所有值。

        2.arrayObject.splice(index ,0,item1,...,itemx)  --- 在指定位置插入值,index:起始位置,0:要刪除的項數。

        3.arrayObject.splice(index ,count,item1,....,itemx)   --- 在指定位置插入值,且同時刪除任意數量的項。

11.indexOf()
        arrayObject.indexOf(searchvalue, starIndex) --- 從陣列的開頭(位置0)開始向後查詢
        引數:searchvalue:必需,要查詢的項
                  starIndex:可選,在哪裡開始查詢
        PS:陣列的位置方法是ECMAScript5為了陣列例項新增的,所以支援的瀏覽器只有:
                    IE9+ 、 Firefox2+ 、 Safari3+ 、 Opera9.5 、 Chrome。

 12.lastIndexof()
        和上面的同理,只不過是從最後一個開始查詢。