先看一段代码

setTimeout(function() {console.log('123')
}, 500)
console.log('456')

对于初学者来讲,会想着代码是从上往下一行一行执行,打印出的结果是先显示123,再显示456,但是实际上并不是这样的。
而这里setTimeout就是一个异步操作,它会在主线程任务执行完成之后才去执行,即第4行执行完成后。在这里举个例子,上面代码我加一句

setTimeout(function() {returnconsole.log('123')
}, 500)
console.log('456')

这里是打印结果,如果它是同步的话,就不会打印出456

那么如何更改为同步呢,废话不多说,直接上代码

        async function promise() {await new Promise(function (resolve, reject) {setTimeout(function () {console.log('123')resolve()}, 500)})console.log('456')}promise()

一个简单的JS异步改为同步例子相关推荐

  1. node.js 将文件目录读取 通过匿名函数自执行 将异步改为同步

    var fs = require('fs');var filesarray = []; fs.readdir('html', function(error, files){if(error){cons ...

  2. 设计一个简单的[JS]文本摘要算法

    引 网站cookie中有一段用户信息(包括微信用户信息,用户关联信息)的文本,使用entrance键存储,选择不同的条件后文本内容也不同,cookie上的值也会变化.本来的打算是通过将entrance ...

  3. 一个简单的js闹钟程序

    一个基于js的简单闹钟程序,小白专用. <script type="text/javascript">var date = new Date();var hour = ...

  4. 如何把ajax改成同步请求,如何将Ajax请求从异步改为同步

    初学c# -- 学习笔记(四) 想想,数据库先用mysql了,这玩意小且安装方便.前面web学了些,现在学winform的.数据库先看看便捷的mysql. 下载了一个mysql5.7版的,装上居然找不 ...

  5. 一个简单的 js 时间对象创建

    JS中获取时间很常见,凑凑热闹,也获取一个时间对象试试 首先,先了解js的获取时间函数如下: var myDate = new Date();          //创建一个时间对象 myDate.g ...

  6. isMobile 一个简单的JS库,用来检测移动设备

    github地址: https://github.com/kaimallea/isMobile 示例 (function () { var MOBILE_SITE = 'http://m.xx.com ...

  7. 一个简单的JS(盒子移动)

    <!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8" ...

  8. html 表格自动计算,一个简单的js事件,循环table并自动计算总价

    texter function $get(id){ return document.getElementById(id); } var table=null; function caculPrice( ...

  9. 一个简单的互斥量与条件变量例子

    #include <pthread.h> #include <stdio.h> #include <stdlib.h> //互斥变量和条件变量静态初始化 pthre ...

最新文章

  1. [学习笔记]最小割之最小点权覆盖最大点权独立集
  2. 程序人生系列谈:《程序员》带给我的启发故事
  3. 服务器预装操作系统,服务器预装操作系统吗
  4. 【Spring】Bean的生命周期
  5. 最快最新最详细的IT电子书
  6. play 连接mysql_Play framework 2.x 连接mysql | 学步园
  7. LeetCode 1134. 阿姆斯特朗数
  8. 关于解决jdbc版本错误问题
  9. ubuntu 普通用户下设置tab键自动补全
  10. 关于“客户感知价值提升”的思考(三)---电商渠道客户感知管理方法探讨
  11. 使用C#,轻松发邮件之QQ邮箱
  12. USB的速度还是不够快
  13. 【知识图谱系列】动态时序知识图谱EvolveGCN
  14. 人脸识别系列(一):dlib安装和使用
  15. 如何将vob格式转换成mp4
  16. linux调节伽马值软件,四个 Linux 下的“护眼”软件
  17. 携程 | 组织架构如何影响项目管理
  18. 想要把邮件转换成PDF?整起!
  19. nodejs aes 加解密
  20. Day14-HTTP协议 web开发概述 servlet快速入门

热门文章

  1. K3后台修改销售模块(销售订单、发货通知单、销售出库单、销售发票)销售部门名称语句
  2. memoQ 9.3 | 在Amazon MT中自定义术语
  3. memoQ 9.2 功能改进抢先知!
  4. 学历证书学位证书的区别_免费在线课程,证书,学位和教育资源的最佳网站
  5. Python 系统运维常用库
  6. 电力工程师计算机考试题库,电力专业电气工程师考试题库
  7. AppGrowing观察|盘点APP推广如何花式蹭“蛙”热
  8. GC 和 OOM 举例
  9. listIterator迭代器实现向前向后遍历
  10. matlab绘图属性