美文网首页
关于同步异步的两个小练习

关于同步异步的两个小练习

作者: Ruby君 | 来源:发表于2017-06-22 14:11 被阅读6次
判断如下代码在控制台打印顺序

HTML:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<body>
    <script>
        setTimeout(
            function(){
                console.log("step0");
            }
        ,0);
        console.log("step1");
        console.log("step2");
        console.log("step3");
        console.log("step4");
    </script>
</body>
</html>

结果:

打印顺序结果

原因分析:
浏览器会在处理完同步代码后再开始处理异步代码。

判断如下代码在控制台打印顺序

HTML:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<body>
    <script>
        console.log("step1");
        console.log("step2");
        console.log("step3");
        console.log("step4");
        console.log("step5");
        var sc = document.createElement("script");
        sc.src = "./add.js";
        var head = document.querySelector("head");
        head.appendChild(sc);
        sc.onload =function(){
            console.log("load success");
        }
        console.log("step7");
    </script>
</body>
</html>

add.js:

console.log("step6");

结果:


打印顺序结果

原因分析:
在使用appendChild插入script的时候,浏览器会异步加载该script标签中的代码,由于浏览器会在处理完同步代码后再开始处理异步代码,所以会出现如图的结果。

参考链接:http://www.phpv.net/html/1700.html

相关文章

  • 关于同步异步的两个小练习

    判断如下代码在控制台打印顺序 HTML: 结果: 原因分析:浏览器会在处理完同步代码后再开始处理异步代码。 判断如...

  • GCD和NSOperationQueue

    ###同步异步、并行串行的区分 * 两个容易搞混的概念: * 同步异步:是指任务添加到线程上这个过程的同步和异步 ...

  • (2018-05-30.Python从Zero到One)8、(T

    7.4 练习 请解释清同步、异步、yield、协程几个概念和Tornado实现异步的原理。 练习使用Tornado...

  • FPGA复位——同步复位和异步复位

    其他参考资料:FPGA中复位信号的设计FPGA同步复位异步复位异步复位同步释放---关于复位的问题FPGA同步复位...

  • javascript 基础攻关(四)—— 异步和单线程

    异步 题目 同步和异步的区别是什么?分别举一个同步和异步的例子 一个关于setTimeout的笔试题 前端使用异步...

  • GCD 和NSOperationQueue

    同步异步、并行串行的区分 两个容易搞混的概念: 同步异步:是指任务添加到线程上这个过程的同步和异步 串行并行:是指...

  • IO模型

    同步,异步,阻塞和非阻塞的概念与区别 同步和异步从消息通知机制角度来说的。 两个任务 同步一直等,异步不等 阻塞和...

  • setState异步同步问题

    关于setState异步同步的问题,以官方文件中较精确的说法:'它不是保证同步的"。那么什么时候异步,什么时候同步...

  • 同步、异步、阻塞与非阻塞

    同步与异步 首先来解释同步和异步的概念,这两个概念与消息的通知机制有关。也就是同步与异步主要是从消息通知机制角度来...

  • 4-1,4-2 异步和单线程-什么是异步

    4-1 异步和单线程-什么是异步 题目 同步和异步区别是什么?分别举一个同步和异步的例子 一个关于setTimeo...

网友评论

      本文标题:关于同步异步的两个小练习

      本文链接:https://www.haomeiwen.com/subject/pukfcxtx.html