详解js中Array的方法及技巧

(编辑:jimmy 日期: 2024/11/20 浏览:2)

JS Array的一些方法在实际中很常用,这里整理记录下来,一是为了常常回顾,二也是方便大家

Map

map():返回一个新的Array,每个元素为调用function的结果

语法: array.map(function(currentValue,index,arr), thisValue)

举例:

var numbers = [65, 44, 12, 4], changedValue;
function multiplyArrayElement(num) {
 return num * 2;
}
(function myFunction() {
 changedValue = numbers.map(multiplyArrayElement);
})()
console.log(changedValue);

Filter 

filter():返回一个符合function条件的元素数组

语法: array.filter(function(currentValue,index,arr), thisValue)

举例:

var ages = [32, 33, 16, 40], changedValue; 
function checkAdult(age) {
 return age >= 18;
}
(function myFunction() {
 changedValue = ages.filter(checkAdult);
})()
console.log(changedValue);

Some

some():返回一个boolean,判断是否有元素是否符合function条件

语法: array.some(function(currentValue,index,arr),thisValue)

举例:

var ages = [3, 10, 18, 20], changedValue;
function checkAdult(age) {
 return age >= 18;
}
(function myFunction() {
 changedValue = ages.some(checkAdult);
})()
console.log(changedValue);

Every

every():返回一个boolean,判断每个元素是否符合function条件

语法: array.every(function(currentValue,index,arr), thisValue)

举例:

var ages = [32, 33, 16, 40], changedValue;
function checkAdult(age) {
 return age >= 18;
}
(function myFunction() {
 changedValue = ages.every(checkAdult);
})()
console.log(changedValue);

ForEach

forEach():没有返回值,只是针对每个元素调用function

语法: array.forEach(function(currentValue, index, arr), thisValue)

举例:

var numbers = [4, 9, 16, 25],changedValue;
function myFunction(item, index, arr) {
 arr[index] = item + 1; 
}
numbers.forEach(myFunction);
console.log(numbers);