filter函数封装

137 阅读1分钟
/*
    @param { Array } arr
    @param { Function } callback
 */

function filter(arr,callback){
    // 声明空数组
    let result = []
    // 遍历数组
    for(let i=0;i<arr.length;i++){
        // 执行回调
        let res = callback(arr[i])
        if(res){
            result.push(arr[i])
        }
    }
    // 返回最终的结果
    return result
}
let arr = [1,2,3,4,5]
const result = filter(arr,item=>item % 2 === 0)
console.log(result)  // [2,4]