js中限定时间内防止按钮重复点击

563 阅读1分钟
this.filterClickTime = 0
cQuickTap(lastTapTime, intervalTime = 1000) {  
    let millisecondNow = new Date().getTime()
    return lastTapTime != 0 && millisecondNow - lastTapTime <= intervalTime ? { isQuickTap: true } : 
    {isQuickTap: false,milTime: millisecondNow}
}
getQuickTap() {
    let cQuickTap = this.cQuickTap(this.filterClickTime)
    if (cQuickTap.isQuickTap) return
    // 要进行的操作
    this.filterClickTime = cQuickTap.milTime
}

思路:点击一次后如果在1秒内再次点击怎么办?

1、记录当前点击的时间 firstClickTime,

2、判断第二次点击的时间 secondClickTime

3、第二次点击的时间 - 第一次点击的时间 就return

4、把第二次点击的时间赋值给 第一次点击的时间