如何让JS确保上一个方法执行完毕再执行下一个方法?(纯js,不用jquery)

Renee1995 2017-09-18 12:23:42
因为下一个方法会用到上一个方法执行后的结果,js在执行方法时,还没执行完,就会跑向下面的代码执行,如何确保上一个方法执行完毕再执行下一个方法?
...全文
13329 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
Renee1995 2017-09-18
  • 打赏
  • 举报
回复

downPdf.onclick = function () {
        pageData = 'pppp';
        console.log("进来了");
        var infoHtml = document.getElementById("infoHtml");
        a(function () {////////
            console.log("pageData-a-after:" + pageData);
            b();
        });

    }
    function a(callback) {
        setTimeout(function () {
            pageData = 'pppp-a';
            console.log("pageData-a-1000:" + pageData);
            callback()//////////////
        }, 1000);

    }
    function b() {
        console.log("pageData-b:" + pageData);
    }
枫舞蝶刺 2017-09-18
  • 打赏
  • 举报
回复
改变你的click方法 downPdf.onclick = function() { pageData='pppp'; console.log("进来了"); var infoHtml=document.getElementById("infoHtml"); a(); console.log("pageData-a-after:"+pageData); setTimeout("b()",1000); } 改变你的a方法 function a(){ setTimeout(function(){ pageData='pppp-a'; console.log("pageData-a-1000:"+pageData); b(); }, 1000); } 改变你的b方法 function b(){ setTimeout(function(){ console.log("pageData-b:"+pageData); }, 1000); }
Renee1995 2017-09-18
  • 打赏
  • 举报
回复
downPdf.onclick = function() { pageData='pppp'; console.log("进来了"); var infoHtml=document.getElementById("infoHtml"); a(); console.log("pageData-a-after:"+pageData); b(); } function a(){ setTimeout(function(){ pageData='pppp-a'; console.log("pageData-a-1000:"+pageData); }, 1000); } function b(){ console.log("pageData-b:"+pageData); } console台: 进来了 pageData-a-after:pppp pageData-b:pppp pageData-a-1000:pppp-a 我想让他执行完a之后再下面打印再调用b
lifewell1 2017-09-18
  • 打赏
  • 举报
回复
上一个方法完毕时候执行下一个呗 即上个方法结尾调用下一个方法

50,523

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧