JavaScript高级函数、箭头函数详解

//定义一个数组arr
const arr = [1,2,3,4,5,6,7,8,9]

/**
 * ----------------------------------------------------
 * 知识点1:JS高级函数
 * 知识点2:箭头函数
 * 当箭头函数只有一个入参时候,入参的()可以省略;
 * 当箭头函数只有一个return语句时,return可以省略
 * ----------------------------------------------------
 */
/**
 * map函数,可以遍历数组;
 * 完整参数(prev,index)
 * prev:数组项
 * index:数组下标值
 */
//将arr数组每一项+1
let maparr1 = arr.map(function(prev){
    return prev+1;
})
console.log(maparr1);//[2, 3, 4,  5, 6,7, 8, 9, 10]

//使用箭头函数简写
let maparr2 = arr.map(prev => {
    return prev+1;
})
console.log(maparr2); //[2, 3, 4,  5, 6,7, 8, 9, 10]

/**
 * reduce函数,可以求数组和
 * 完整参数(prev,cur,index,arr)
 * prev:初始化值
 * cur:数组项
 * index:下标值
 * arr:数组
 */
//求arr数组的和
let reducemap1 = arr.reduce(function(prev, cur){
    return prev +  cur
},0)
console.log(reducemap1); //45

//使用箭头函数简写
let reducemap2  = arr.reduce((prev,cur) => {
    return prev + cur
},0)
console.log(reducemap2);//45

/**
 * filter函数,可以过滤数组
 * 完整参数(prev,index)
 * prev:数组项
 * index:数组下标值
 */
//求数组arr中,大于3的项
let filterarr1 = arr.filter(function(prev){
    return prev > 3
})
console.log(filterarr1); //[ 4, 5, 6, 7, 8, 9 ]

//使用箭头函数简写
let filterarr2 = arr.filter(prev => {
    return prev > 3
})
console.log(filterarr2);//[ 4, 5, 6, 7, 8, 9 ]


上一篇:简单类型数组去重的若干方法


下一篇:自己实现Linkedlist,实现其常用的增、删、查的方法