export const getImgUrl = function(src, width = 300, height = 300, mode = 2) { return src ? src.replace(/(\{width}|\{height}|\{mode})/g, function($0) { const dict = { '{width}': width, '{height}': height, '{mode}': mode || 2 }; return dict[$0]; }).replace(/https?:/, '') + '/interlace/1' : ''; }; export const replaceHttp = function(src) { return src.replace(/https?:/, ''); }; export const debounce = (idle, action) => { // 函数去抖动,超过一定时间才会执行,如果周期内触发,充值计时器 let last; return function() { let args = arguments; if (last) { clearTimeout(last); } last = setTimeout(() => { action.apply(this, args); }, idle); }; }; export const throttle = (delay, action) => { // 函数节流器,定义函数执行间隔,按频率触发函数 let last = 0; return function() { let args = arguments; let curr = +new Date(); if (curr - last > delay) { action.apply(this, args); last = curr; } }; };