1.实现防抖函数(debounce)
连续触发在最后一次执行方法,场景:输入框匹配
let debounce = (fn,time = 1000) => {
    let timeLock = null
    return function (...args){
        clearTimeout(timeLock)
        timeLock = setTimeout(()=>{
            fn(...args)
        },time)
    }
}
2.实现节流函数(throttle)
在一定时间内只触发一次,场景:长列表滚动节流
let throttle = (fn,time = 1000) => {
    let flag = true
    return function (...args){
        if(flag){
            flag = false;
            setTimeout(()=>{
                flag = true
                fn(...args)
            },time)
        }
    }
}