1.陣列的普通方法
1. concat(X,X , X) 合并陣列,該方法不會改變原陣列(X可以是具體的值,也可以是陣列,可以傳任意多個)
var arr = [1, 2, 3]
var arr1 = arr.concat(4, 5)
console.log(arr);//回傳的原陣列
console.log(arr1);//回傳新的陣列
2.push(X,Y)陣列末尾添加,該方法會改變原陣列(X(必填)為要添加陣列的第一個元素,Y(選填)為要添加陣列的第二個元素,可以添加多個元素)
var arr = [1, 2, 3]
var arr2 = [1, 2]
var arr1 = arr.push(1, 2, 3)
console.log(arr);
3.splice(x,y,z)向陣列添加或洗掉,然后回傳的是被洗掉的專案,該方法會改變原陣列(x(必填,整數)為要添加或洗掉開始的位置, y(必填 )為要洗掉幾個資料,如果為0則不洗掉,y(選填)像陣列添加新的專案)
var arr = [1, 2, 3]
var arr1 = arr.splice(1, 2, 4)
console.log(arr);
console.log(arr1);
4.slice(x,y)從已有陣列中回傳指定元素,不會改變原陣列,(x(必填)從何處開始選取,y(選填)在何處停止截取,沒有引數的話就從開始截取到結束)
var arr = [1, 2, 3]
var arr1 = arr.slice(1, 2)
var arr2 = arr.slice(1, )
console.log(arr);
console.log(arr1);
console.log(arr2);
5.pop() 方法將洗掉 arr的最后一個元素,把陣列長度減 1,并且回傳它洗掉的元素的值,如果陣列已經為空,則 pop() 不改變陣列,并回傳 undefined 值,該方法會改變原陣列,
var arr = [1, 2, 3]
var arr1 = arr.pop()
console.log(arr);
console.log(arr1);
6.shift() 方法用于把arr的第一個元素從其中洗掉,并回傳第一個元素的值,該方法會改變原陣列
var arr = [1, 2, 3]
var arr1 = arr.shift()
console.log(arr);
console.log(arr1);
7. unshift() 方法可向陣列的開頭添加一個或更多元素,并回傳陣列長度,該方法會改變原陣列
var arr = [1, 2, 3]
var arr1 = arr.unshift(5, 6, 7)
console.log(arr);
console.log(arr1);
8 reverse() 方法用于顛倒陣列中元素的順序,該方法會改變原陣列
var arr = [1, 2, 3]
var arr1 = arr.reverse()
console.log(arr);
console.log(arr1);
9.indexOf() 獲取元素在陣列中的索引,從前面像后面查找,如果找到了就回傳找到的第一個的索引,如果沒有就回傳-1,
var arr = [1, 2, 3, 1, 1]
var arr1 = arr.indexOf(1)
console.log(arr);
console.log(arr1);
10.lastIndexOf() 獲取元素在陣列中的索引,從后面像前面查找,如果找到了就回傳找到的第一個的索引,如果沒有就回傳-1,
var arr = [1, 2, 3, 1, 1]
var arr1 = arr.lastIndexOf(1)
console.log(arr);
console.log(arr1);
11.sort()方法用于對陣列的元素進行排序,該方法會改變原陣列(a-b為升序,b-a為降序)
var arr = [1, 2, 3, 1, 1]
var arr1 = arr.sort(function(a, b) {
return b - a
})
console.log(arr);
console.log(arr1);
12.join()方法用于把陣列中的所有元素轉換成字串,如果括號不放引數,那么將用逗號隔開,該方法不會改變原陣列
var arr = [1, 2, 3, 1, 1]
var arr1 = arr.join('.')
console.log(arr);
console.log(arr1);
2.陣列的迭代方法
1.some若陣列中的有一個元素滿足條件,則回傳true,若都不滿足,則回傳false
var arr = [1, 2, 3, 1, 1];
var flang = arr.some(function(itme) {
return itme >= 3
})
console.log(flang);
2.every若陣列中每一個元素都滿足條件,則回傳true,有一個不滿足,則回傳false
var arr = [1, 2, 3, 1, 1];
var flang = arr.every(function(itme) {
return itme >= 3
})
console.log(flang);
3.filter方法創建一個新的陣列,新陣列中的元素是通過檢查指定陣列中符合條件的所有元素,
var arr = [1, 2, 3, 1, 1];
var flang = arr.filter(function(itme) {
return itme >= 2
})
console.log(flang);
console.log(arr);
4.map對原陣列資料進行處理之后,回傳新陣列,該方法不會改變原陣列
var arr = [1, 2, 3, 1, 1];
var flang = arr.map(function(itme) {
if (itme > 2) {
return itme + 2
}
return itme
})
console.log(flang);
console.log(arr);
5.reduce(function(a,b){}) 對原陣列進行運算合并多維陣列,回傳一個新陣列,該方法不會改變原陣列
a的值第一次為arr的第一個值,第二次a為你計算或合并的值
var arr = [1, 2, 3, 1, 1];
var flang = arr.reduce(function(a, b) {
console.log(a, b);
return a + b;
})
console.log(flang);
console.log(arr);
//合并多維陣列
var arr2 = [[10, 20, 30], ['hello'], [50, 100], [40], [70, 11, 22]];
var arrx = arr.reduce(function (a, b) {
return a.concat(b)
})
6. forEach()方法用于呼叫陣列的每個元素,并將元素傳遞給回呼函式,
var arr = [1, 2, 3, 1, 1];
arr.forEach(function(value, index, array) {
//value:便利陣列的內容
//index:對應陣列的索引
//array:陣列本身
console.log(value, index, array);
})
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/303064.html
標籤:其他
上一篇:JS陣列去重的幾種方法
