什么是高阶函数
所谓的就是,函数将另一个函数作为参数,这种函数称为高阶函数,即高阶函数应满足下列条件中的1个
- 函数可以作为参数被传递
- 函数可以作为返回值输出
常用的高阶函数
map()
map() 方法返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值。可以用于遍历数组集合操作
function f(x){
return x*x;
}
var arr = [1,2,3,4,5];
var newArr = arr.map(f);
console.log(newArr);
使用map(String)可以将数组的元素转字符串化
var arr = [1,2,3,'a1',4,'b1',{a:2},[1,2],function(){}];
varr newArr = arr.map(Number);
console.log(newArr);
reduce()
var arr = [1,2,3,4,5];
var sum = arr.reduce(function(x,y){return x+y})
console.log(sum);
filter()
filter()可以用来筛选元素
例如筛选数组中的奇数
var arr = [1,2,3,4,5];
var r= arr.filter(function(x){return x%2!=0})
console.log(r)