本文和大家分享的主要是javascript中關(guān)于數(shù)組最重要的5個方法,一起來看看吧,希望對大家學(xué)習(xí)javascript有所幫助。
Array.forEach()
.forEach() 方法能夠方便的讓你 遍歷數(shù)組里的每個元素 ,你可以在回調(diào)函數(shù)里對每個元素進(jìn)行操作。 .forEach() 方法沒有返回值,你不需要在回調(diào)函數(shù)里寫 return ,這是無意義的。
var animals = ['dog', 'cat', 'mouse'];
animals.forEach(function(item){
console.log(item);
});
Array.map()
.map() 方法能夠遍歷整個數(shù)組,然后 返回一個新數(shù)組 ,這個新數(shù)組里的元素是經(jīng)過了指定的回調(diào)函數(shù)處理過的。
如果你想修改數(shù)組里的每個元素,然后將修改后的數(shù)組存入新的數(shù)組,那使用 .map() 方法最方便。
var numbers = [2, 4, 6, 8];
var doubleNums = numbers.map(function(element) {
return element * 2;
});
console.log('doubleNums: ', doubleNums)
Array.filter()
.filter() 方法能夠 過濾掉數(shù)組中的某些元素 ,你可以在回調(diào)函數(shù)里設(shè)定條件,不符合條件的元素都會排除在外。
var scores = [3, 12, 5, 23, 19, 7];
var topScores = scores.filter(function(item){
if (item > 10){
return true;
} else {
return false;
}
});
console.log('topScores: ', topScores);
Array.indexOf()
indexOf() 能夠告訴你 某個元素在數(shù)組中的位置 ,它返回的是索引值,如果數(shù)組里有重復(fù)的元素,它會返回第一個元素的位置。
var a = [2, 9, 9, 18];
var i = a.indexOf(9);
console.log('i: ', i);
/*
if (a.indexOf(7) === -1) {
// 數(shù)組中沒有這個元素
}*/
Array.every()
.every() 方法的作用是用指定的回調(diào)函數(shù)去檢查數(shù)組中的每個元素,如果對于每個元素,這個回調(diào)函數(shù)都返回true,則 .every() 返回true。否則, .every() 返回false。
如果你想知道數(shù)組中的所有元素都是否符合某種條件,使用 .every() 最方便。
var ages = [23, 19, 32, 44];
var olderThan18 = ages.every(function(element) {
return element > 18;
});
console.log('olderThan18: ', olderThan18);
上面的這5個方法只是很多JavaScript方法中關(guān)于數(shù)組的最重要的幾個,還有很多關(guān)于數(shù)組的方法、工具包( lodash and underscore )等都非常的有用。
來源:極客頭條