当前位置: 首页 > news >正文

网站建设的人性分析济南微信网站

网站建设的人性分析,济南微信网站,杭州网站艰涩,百度移动网站生成文章目录 同步和异步async/awaitPromisePromise的概念 同步和异步 ​ 同步:代码按照编写顺序逐行执行,后续的代码必须等待当前正在执行的代码完成之后才能执行,当遇到耗时的操作(如网络请求等)时,主线程会…

文章目录

    • 同步和异步
    • async/await
    • Promise
            • Promise的概念

同步和异步

同步:代码按照编写顺序逐行执行,后续的代码必须等待当前正在执行的代码完成之后才能执行,当遇到耗时的操作(如网络请求等)时,主线程会被阻塞,直到该操作完成。

异步:当遇到耗时的操作发生时,主线程不会被阻塞,主线程会继续执行后续的代码,而非等待耗时操作完成。

async/await

​ async/await使用同步的方式编写异步代码,避免回调地狱。优势在于处理多个异步操作的情况下,可以使代码更简洁易读。

回调地狱是指过度使用嵌套的回调函数,导致代码难以阅读和维护。

async:当一个函数被标记为async后,该函数会返回一个Promise对象

await

  1. 只能在async函数内部使用。
  2. 加上await关键字之后,会执行到这一行时暂停函数的剩余部分,等待网络请求完成,然后继续执行并获取到请求返回的数据。
    在这里插入图片描述

Promise

​ Promise表示承诺在未来的某个时刻可能会完成并返回结果。
​ 对干某些需要时间来处理结果的操作,如用户登录、读取文件等,可以使用Promise对象来执行异步操作。
​ Promise对象有三种状态pending(待处理)fulfilled(已履行)rejected(被驳回)

  1. 当创建一个Promise对象时,它的初始状态为pending,表示异步执行还未完成。
  2. 当异步执行成功时,会调用resolve函数把Promise对象的状态改变为fulfilled,可通过then方法来获取异步操作的结果。
  3. 当异步执行异常时,会调用reject函数把Promise对象的状态更改为rejected,可通过catch方法来处理错误。

语法模版:

1.new关键字声明了一个Promise对象
2. 这个对象有两个参数,resolve,reject
3. 声明了一个变量用来存储Promise对象的应用
//定义Promise
声明一个变量 = new Promise((resolve,reject)=>{resolve("已完成方法")reject("未完成方法")
})
//异步操作
Promise.then(result => {console.log("result:",result)	//.then方法获取resolve()方法
}).catch(error => {console.log("error:",error)		//.catct方法获取reject()方法
}).finally(()=>{console.log("异步执行结束")		//异步执行之后进行调用,无论是那种结果
})

简化形式:

声明一个变量 = new Promise((resolve,reject)=>{resolve("已完成方法")reject("未完成方法")
}).then(result => {console.log("result:",result)
}).catch(error => {console.log("error:",error)
}).finally(()=>{console.log("异步执行结束")
})

异步操作:异步操作是指在程序执行过程中,某个操作不会立即返回结果,而是需要一段时间的等待

Promise的概念

​ 因为随着前端的业务逻辑变的越来越复杂,之前的回调函数不够用了,多层次的嵌套会导致出现回调地狱,不好维护。所以,为了解决回调地域的问题,这个时候就使用了Promise进行优化。

​ Promise也是目前前端解决异步操作多次嵌套回调的最好办法。

Promise用法:

new Promise(()=>{//方法体1
}).then(()=>{//方法体2})

题目一:宏任务与微任务调用步骤

image-20240713122520810

答案:1243

解析:宏任务就是构造函数,所以const离开执行,Promise.then是微任务,属于异步操作,所以先执行console.log(4)然后再回来执行.then

题目二:构造函数只执行一次

image-20240713122814037

答案:122

解析:构造函数只执行一次,但是resolve取决于调用了多次.then(then和resolve是绑定的)。

题目三:两秒之内输出一个“1”

image-20240713123025828

答案:image-20240713123257392

解析:看到最下面有.then方法,提示使用Promise

http://www.yayakq.cn/news/215167/

相关文章:

  • 云南昆明做网站win7 iis 默认网站
  • 重庆网站建设学习搜索引擎优化教材答案
  • 做网站备案要多久建立无上气运皇朝
  • google网站管理员中心宁夏网页制作公司
  • flash素材网站有哪些展示型网站制作
  • 短网址网站用户界面设计模板
  • 在别人网站挂黑链数据分析网站怎么做
  • cms做视频网站松江品划网络做网站
  • 搭建网站 软件wordpress添加微信扫码支付宝
  • 在哪里建网站好设计网站的公司名称
  • 邢台seo一站式国家企业信用信息没有网站怎么做
  • 中国城乡住房和建设部网站首页使用代理服务器后看什么网站
  • 广州域名企业网站建站哪家好广州网站开发哪家公司好
  • 昆山做网站公司哪家好wordpress媒体库的目录错误
  • 彩票网站建设哪里高端建材项目
  • 教育培训网站设计怎么制作自己的二维码
  • 网站建设行业赚钱么上海学校网站建设
  • 深圳建模板网站一个前端页面多少钱
  • 微网站免费模板跨境电商平台有哪些可以加盟
  • 一个考试网站怎么做搜索网站内容
  • 一起做英语作业网站黄石手机网站建设
  • 中信建设有限责任公司官方网站跨境电商erp软件排名
  • seo网站营销分销系统方案
  • 网站开发细节怎么做才能使网站ip增多
  • 网站建设工资一月多少网站备案快速备案
  • 公众电影网站怎么做纯文本网站建设
  • 济南网站建设李尚荣网站风格一般具有哪三大特征
  • 长沙网站主机北京住房和城乡建设部网站
  • 潍坊住房和城乡建设局网站南通网站建设规划书
  • 东莞整站排名查企业免费