數組(array)是按次序排列的一組值。每一個值的位置都有編號(從0開始),整個數組用方括號表示。數組
var arr = ['a', 'b', 'c'];
建立數組的方式函數
var arr = new Array(1,2,3);
var arr = Array(1,2,3);
var = [1,2,3];
數組能夠嵌套 一個數組能夠做爲一個元素被包含在另一個數組裏面 這就是二維數組prototype
var arr=[[1,2,3],[4,5,6],[7,8,9]]
檢測數組的方法code
console.log(arr instanceof Array); console.log(Object.prototype.toString.call(arr)); console.log(Array.isArray(arr));
轉換方法
toString
把數組轉換爲字符串 並返回結果對象
var arr=[1,2,3,4,5]; console.log(arr.toString()) //1,2,3,4,5
valueOf
返回 Boolean 對象的原始值排序
var arr=[1,2,3,4,5]; console.log(arr.valueOf()) // [1,2,3,4,5]
push方法用於在數組的末端添加一個或多個元素,並返回添加新元素後的數組長度 該方法會改變原數組字符串
var arr = []; arr.push(1) // 1 --->數組長度 arr.push('a') // 2 arr.push(true, {}) // 4 arr // [1, 'a', true, {}]
pop方法用於刪除數組的最後一個元素,並返回該元素 該方法會改變原數組
對空數組使用pop方法,不會報錯,而是返回undefinedio
var arr = ['a', 'b', 'c']; arr.pop() // 'c' arr // ['a', 'b']
shift方法用於刪除數組的第一個元素,並返回該元素 該方法會改變原數組console
var a = ['a', 'b', 'c']; a.shift() // 'a' a // ['b', 'c']
unshift方法用於在數組的第一個位置添加元素,並返回添加新元素後的數組長度 該方法會改變原數組function
var a = ['a', 'b', 'c']; a.unshift('x'); // 4 a // ['x', 'a', 'b', 'c']
unshift方法能夠接受多個參數,這些參數都會添加到目標數組頭部。
var arr = [ 'c', 'd' ]; arr.unshift('a', 'b') // 4 arr // [ 'a', 'b', 'c', 'd' ]
reverse方法用於顛倒排列數組元素,返回改變後的數組 該方法將改變原數組。
var a = ['a', 'b', 'c']; a.reverse() // ["c", "b", "a"] a // ["c", "b", "a"]
sort方法對數組成員進行排序,默認是按照字典順序排序。排序後,原數組將被改變
sort方法不是按照大小排序,而是按照Unicode順序 即數值會被先轉成字符串,再按照Unicode順序進行比較,因此101排在11的前面。
[11, 101].sort() // [101, 11]
若是想讓sort方法按照自定義方式排序,能夠傳入一個函數做爲參數。
[10111,1101,111].sort(function(a,b){ return a-b; }) //[111, 1101, 10111]
concat方法用於多個數組的合併 它將新數組的成員,添加到原數組成員的後部,而後返回一個新數組,原數組不變。
['hello'].concat(['world']) // ["hello", "world"]
slice方法用於提取目標數組的一部分,返回一個新數組,原數組不變。
arr.slice(start, end);
它的第一個參數爲起始位置(從0開始),第二個參數爲終止位置(但該位置的元素自己不包括在內)。若是省略第二個參數,則一直返回到原數組的最後一個成員。
var a = ['a', 'b', 'c']; a.slice(0) // ["a", "b", "c"] a.slice(1) // ["b", "c"] a.slice(1, 2) // ["b"]
若是slice方法的參數是負數,則表示倒數計算的位置。
var a = ['a', 'b', 'c']; a.slice(-2) // ["b", "c"] a.slice(-2, -1) // ["b"]
-2表示倒數計算的第二個位置,-1表示倒數計算的第一個位置。
若是第一個參數大於等於數組長度,或者第二個參數小於第一個參數,則返回空數組
splice方法用於刪除原數組的一部分紅員,並能夠在刪除的位置添加新的數組成員,返回值是被刪除的元素。該方法會改變原數組
splice的第一個參數是刪除的起始位置(從0開始),第二個參數是被刪除的元素個數。若是後面還有更多的參數,則表示這些就是要被插入數組的新元素
var a = ['a', 'b', 'c', 'd', 'e', 'f']; a.splice(4, 2) // ["e", "f"]