示例的源码:

    在浏览器中打断点后的分析总结:

    首次点击 if 为false 会在下面的函数执行中生成一个 setTimeout 事件 , 在 800ms 内再次点击 if 为 true 会清除掉上次生成的 setTimeout 事件 , 往下面执行时又重新生成一个新的 setTimeout 事件, 所以在 800ms 内连续点击只会执行最后一次点击的事件,所以便完成了稀释的效果。