zoukankan      html  css  js  c++  java
  • promise 封装定时器

    function timeout(delay=1000){
      return new Promise((resolve,reject)=>{
        setTimeout(resolve,delay);
      })
    }

    timeout().then(()=>{
      console.log(1);
      return timeout(2000);
    }).then(()=>{
      console.log(2);
    });

    ============================================================================================================================================================================================================

    function interval(delay=1000,callback){
      return new Promise((resolve,reject)=>{
        let id = setInterval(()=>{
          callback(id,resolve);
        },delay)
      })
    }

    interval(100,(id,resolve)=>{
      let box = document.querySelector('#box');
      let left = parseInt(window.getComputedStyle(box).left)
      box.style.left = left + 10 + 'px';
      if(left>=100){
        clearInterval(id);
        resolve(box)
      }
    }).then(oNode=>{
      return interval(100,(id,resolve)=>{
        let width = parseInt(window.getComputedStyle(oNode).width);
        oNode.style.width = width-10 + 'px';
        if(width<=20){
          clearInterval(id);
          resolve(box);
        }
      })
    }).then(oNode=>{
      interval(100,(id,resolve)=>{
        let height = parseInt(window.getComputedStyle(oNode).height);
        oNode.style.height = height - 10 + 'px';
        if(height<=20){
          clearInterval(id);
        }
      })
    });

  • 相关阅读:
    51nod 1416 两点 dfs
    Codeforces Round #424 (Div. 2) A-C
    Codeforces Round #423 (Div. 2) A-C
    Codeforces Round #422 (Div. 2) A-C
    HDU 6077 Time To Get Up 模拟
    51nod 1381 硬币游戏 概率
    51nod 1100 斜率最大 计算几何
    hihocoder 1287 : 数论一·Miller-Rabin质数测试 大质数判定
    字典树
    数论
  • 原文地址:https://www.cnblogs.com/jayking1314/p/14903498.html
Copyright © 2011-2022 走看看