/** * @desc 防抖函数 * @param {Function} callBack * @return {Function} fn */ var debounce = function debounce(fn) { var delay = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 500; var timer = void 0; return function () { var _this = this; for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) { args[_key] = arguments[_key]; } if (timer) { clearTimeout(timer); } timer = setTimeout(function () { fn.apply(_this, args); }, delay); }; }; module.exports = debounce;