promise、setTimeout混搭的 JavaScript 运行机制

本文深入探讨了Promise和setTimeout在JavaScript中的运行机制,包括Promise的状态转换、宏任务和微任务的区别以及它们在事件循环中的执行顺序。通过实例分析了代码执行的流程,帮助理解异步操作在JavaScript中的实现。
摘要由CSDN通过智能技术生成

promise、setTimeout混搭的 JavaScript 运行机制

笔试题总考,一次又一次再见面的兄弟 promise 和 setTimeout真让人欲罢不能(雾)。真的受不了每次浑水摸鱼猜(真实),这次看了各有趣的总结,在此做个总结!!

参考: https://juejin.im/post/59e85eebf265da430d571f89#heading-3

首先先要知道 promise 是个啥玩意(喂,难道没有弄清楚就冲了吗?)

Promise 对象是一个构造函数。
  1. resolve 和 reject 是两个函数,JavaScript 引擎提供,不需要自己部署。
  2. 在 promise 函数内,这两个函数是用来改变 promise 的状态。状态只要改变就不受外界影响再改变。(超级奈斯有没有 QvQ )
  3. 比如:在异步调用成功之后,需要将 promise 状态改为 fulfilled,就要用 resolve(), 如果是异步调用失败之后嫩,就需要将 promise 状态改为 rejected,就需要调用 reject()
const isCheck = true;
const pro1 = function(tem) {
   
  const message = "hey gay!" + tem.height + " " + tem.color;
  return Promise.resolve(message);
};

const pro2 = new Promise((resolve,reject) => {
   
  if (isCheck) {
   
    const tem = {
   
      height: '111',
      color: 'red'
    };
    console.log("pro2.resolve");
    return resolve
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值