防抖函数第一次立即执行

        function debounce(fn, wait) {
            var timer = null;
            var self = this;
            var args = arguments;
            var count = 0;
            return function () {
                clearTimeout(timer);
                if (count == 0) {// 第一次立即执行
                    fn.apply(self, args);
                    count ++;
                } else {
                    timer = setTimeout(function () {
                        fn.apply(self, args)
                        count ++;
                    }, wait);
                }

            }
        };

  

原文地址:https://www.cnblogs.com/jlyuan/p/13657569.html