JavaScript原生数组及高阶函数
# 一、map
map()方法创建一个新数组,其结果是该数组中的每个元素都调用一个提供的函数后返回的结果
callback函数会被自动传入三个参数:数组元素,元素索引,原数组本身
let list = [1, 2, 3, 4, 5];
let other = list.map((d, i) => {
return d * 2;
});
console.log(other);
// print: [2, 4, 6, 8, 10]
@前端进阶之旅: 代码已经复制到剪贴板
# 二、filter
语法
var new_array = arr.filter(callback[, thisArg])
@前端进阶之旅: 代码已经复制到剪贴板
filter()方法创建一个新数组, 其包含通过所提供函数实现的测试的所有元素
参数
callback返回true表示保留该元素(通过测试),false则不保留- 用来测试数组的每个元素的函数。调用时使用参数
(element, index, array)。 - 返回true表示保留该元素(通过测试),
false则不保留
- 用来测试数组的每个元素的函数。调用时使用参数
function isBigEnough(value) {
return value >= 10;
}
var filtered = [12, 5, 8, 130, 44].filter(isBigEnough);
// filtered is [12, 130, 44]
@前端进阶之旅: 代码已经复制到剪贴板
# 三、some
返回一个
boolean,判断是否有元素符合func条件,如果有一个元素符合func条件,则循环会终止
some()方法测试数组中的某些元素是否通过由提供的函数实现的测试
const isBiggerThan10 = (element, index, array) => {
return element > 10;
}
[2, 5, 8, 1, 4].some(isBiggerThan10);
// false
[12, 5, 8,