利用函数回调获取setInterval中返回的值

我们都知道,定时器里面想返回值如果你用return根本没作用,那么怎么拿到定时器所返回的值呢,
现在只需要利用回调函数,给主函数传一个函数类型的参数callback,然后把想要返回的num再传给callback,
这时候callback就拿到了这个num值
let myTimer = function (callback) {
  let height = 10;
  let flag = true;
  let time= setInterval(function () {
    height--;
    console.log(height);
    if(!height){
      let num=Math.round(Math.random()*10);
      callback(num);
      clearInterval(time);
    }
  }, 200);
};
myTimer(function (num) {
  console.log(`我拿到了定时器结束的时候返回的随机值${num}`);
});
 
上一篇:根据条件返回相应值 decode(条件,值1,翻译值1,值2,翻译值2,...值n,翻译值n,缺省值)


下一篇:Mac下命令行中用sublime打开指定文件 设置方法