AX0101_4413 2021-08-19 14:43 采纳率: 95.7%
浏览 130
已结题

js如何让函数依次执行

这是我的代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>

<script>
    function f(){
        setTimeout(function (){
            let a=document.createElement("div");
            a.id="AX";
            document.body.append(a);
        },1000);
    }
    function g(){
        document.getElementById("AX").innerHTML="abc";
    }

    f();
    g();
</script>

</body>
</html>

它本该输出abc,但是没有。因为g在f之前执行了。
我希望g在f之后执行。

  • 写回答

5条回答 默认 最新

  • CSDN专家-showbo 2021-08-19 14:53
    关注

    要做成回调的形式执行g函数,要不f中添加div是延时执行的,执行g的时候并没有生成dom出错了
    有帮助麻烦点个采纳【本回答右上角】,谢谢~~有其他问题可以继续交流~

    
    <script>
        function f(callback) {
            setTimeout(function () {
                let a = document.createElement("div");
                a.id = "AX";
                document.body.append(a);
                callback();/////
            }, 1000);
        }
        function g() {
            document.getElementById("AX").innerHTML = "abc";
        }
        f(g);//这样调用就没问题了
    </script>
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)

报告相同问题?

问题事件

  • 系统已结题 8月27日
  • 已采纳回答 8月19日
  • 创建了问题 8月19日

悬赏问题

  • ¥15 求lingo代码和思路
  • ¥15 公交车和无人机协同运输
  • ¥15 stm32代码移植没反应
  • ¥15 matlab基于pde算法图像修复,为什么只能对示例图像有效
  • ¥100 连续两帧图像高速减法
  • ¥15 如何绘制动力学系统的相图
  • ¥15 对接wps接口实现获取元数据
  • ¥20 给自己本科IT专业毕业的妹m找个实习工作
  • ¥15 用友U8:向一个无法连接的网络尝试了一个套接字操作,如何解决?
  • ¥30 我的代码按理说完成了模型的搭建、训练、验证测试等工作(标签-网络|关键词-变化检测)