您好,登錄后才能下訂單哦!
Array是Javascript的原生對象
構造函數
var arr=new Array()
參數可以是單個數字表示產生長度為幾的數組,但各個成員的值都為空,如果是多個數字的話,就表示數組成員;也可以是字符串數組等。但如果參數是空位的話,就會讀取到undefined,而且讀取不到鍵名
實例:
var arr = new Array(3);
arr.length // 3
arr // [ empty x 3]
判斷是否為數組
Array.isArray()返回一個布爾值,表示是否為數組,返回值為布爾值
var arr = [1, 2, 3];
Array.isArray(arr) // true
方法
1:valueOf()表示對該對象求值,返回數組本身
var arr = [1, 2, 3];
arr.valueOf() // [1, 2, 3]
2:toString()返回數組的字符串形式,數組變字符串
var arr = [1, 2, 3];
arr.toString() // "1,2,3"
3:push()在數組的末端添加一個或者多個元素,并返回添加新元素的數組長度,會改變原來的數組
var arr = [1,2];
console.log(arr.push(3));//3---返回添加新元素后的數組長度
4:pop()刪除數組的最后一個元素,并返回該元素,會改變原來的數組。對空數組使用pop方法,會返回undefined
var arr = ['a', 'b', 'c'];
console.log(arr.pop()); // 'c'--刪除最后一個元素,并將其返回
5:shift()用于刪除數組的第一個元素,并返回該元素,會改變原來數組
Unshift()用于在數組第一個位置添加元素,并返回新元素的數組長度,該方法會改變原數組
var a = ['a', 'b', 'c'];
console.log(a.shift()); // 'a'--在第一個位置刪除元素a
console.log(a );// ['b', 'c']
a.unshift('d'); // 4--添加d元素,并返回數組長度4
6:join()將數組轉化為字符串。以指定參數作為分隔符,將所有數組成員連接成為一個字符串返回,如果數組成員是undefined或null或者空位,會將轉化為空字符串
var a = [1, 2, 3];
console.loga.join(' '));// '1 2 3'
console.loga.join(' | '));// "1 | 2 | 3 "
console.loga.join()); // "1,2,3"
7:concat()數組合并,將新數組的成員添加到原數組成員的后面,但不影響原數組
var a=[1,2,3];
var b=[4,5,6];
console.log(a.concat(b));//[1,2,3,4,5,6]
8:reverse()用于顛倒數組元素,返回改變后的數組,該方法會改變原數組
var a = ['a', 'b', 'c'];
console.log(a.reverse()); // ["c", "b", "a"]
console.log(a );// ["c", "b", "a"]
9:arr.slice(start,end)返回一個新數組,原數組不變:兩個參數,第一個參數為起始位置,第二個參數為終止位置,左開右閉[start,end),取小不取大
var a = ['a', 'b', 'c'];
console.log(a.slice(0)) // ["a", "b", "c"]
console.log(a.slice(1, 2)) // ["b"]
10:splice()用于刪除原數組的一部分成員,并且在刪除的位置添加新的數組成員,返回值是被刪除的元素,會改變原數組 如果是刪除的話第一個參數是索引起始位置,第二個參數是被刪除元素的個數;插入元素的話可以直接在這兩個元素后面添加新成員
var a = ['a', 'b', 'c', 'd', 'e', 'f','g'];
a.splice(4, 2) // ["e", "f"]
a//['a', 'b', 'c', 'd','g'];
a.splice(0, 2, 'h', 'i') // ["a", "b"]
a // [ 'c', 'd','g','h', 'i'];--刪除a,b并添加h i
11:sort()對數組成員進行排序,按照字典順序排序,數值會被轉化為字符串,然后再進項字典順序排序,排序后原數組
成員將被改變,可以傳入一個函數作為參數
實例1: console.log([9,7,8,6].sort());//[6,7,8,9]
實例2:
var b=[3,2,4,1]
b.sort(function (n1,n2){
return n1-n2;
});
console.log(b);//[1,2,3,4]
12:map()將數組的所有成員依次傳入參數,然后將每一次的執行結果組成一個新數組返回,接受一個函數,函數中傳入三個參數,當前成員 當前位置 數組本身 相當于遍歷數組,映射一個新數組
var numbers = [1, 2, 3];
numbers.map(function (n) {
return n + 1;
});// [2, 3, 4]
numbers
// [1, 2, 3]
13:forEach遍歷數組 element,index,array---當前值、當前位置、整個數組
var a=[1,2,3,4];
a.forEach(function (val, index, arr) {
arr[index]+=val;
})
console.log(a)//[2,4,6,8]
14:filter()用于過濾數組成員,滿足條件的成員組成一個新數組返回
console.log([1,2,3,4].filter(function (val, index, arr) {
if (val % 2 == 0) {
return val;
}
}));//[2,4]
15:some()返回一個布爾值,表示判斷數組成員是否符合某種條件。
var arr = [1, 2, 3, 4, 5];
arr.some(function (elem, index, arr) {
return elem >= 3;
});
// true---如果有一個大于等于3,就會返回true
16:reduce()累加//累乘
console.log([1,2,3].reduce(function (totle, current, index) {
return totle *= current;
}));//6
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。