await 到底在等待什么

await 在等什么?------ 两种情况

等待一个 非 Promise 值(同步值)

js 复制代码
function getSomething() {
  return "something";
}

async function test() {
  const v1 = await getSomething(); // 等待 "something"
  console.log(v1); // 立即输出: something
}

test();

await 遇到非 Promise 值时,不会真正"等待" ,而是立即返回该值。

等待一个 Promise 对象

js 复制代码
function testAsy(x) {
  return new Promise(resolve => {
    setTimeout(() => {
      resolve(x);
    }, 3000);
  });
}

async function testAwt() {
  let result = await testAsy('hello world'); // 等待 Promise resolve
  console.log(result);    // 3秒后输出: hello world
  console.log('cuger');   // 3秒后输出: cuger
}

testAwt();
console.log('cug'); // 立即输出: cug

:只有当 await 右侧是 Promise 时,等待 promise 状态的改变,后的值

``

js 复制代码
async function fetchData() {
   let response = await fetch('https://api.example.com/data');
   //
   let data = await response.json();
   console.log(data);
}
fetchData();

fetch 成功值是一个异步对象,所以还得awiat

相关推荐
众链网络1 分钟前
年卡跨淡旺季的有效期模型:不可用日期、次数与顺延规则
java·前端·数据库
2601_949847755 分钟前
jose 跨端三方库仓颉适配全流程
前端·javascript·flutter
CappuccinoRose16 分钟前
滚动交互体系
前端·javascript·交互·html5·1024程序员节
时空节拍AI数字人19 分钟前
博物馆数字人讲解系统设计:知识库 schema、展项联动协议与时序控制
java·服务器·前端·人工智能·ai·语音识别
吴建旭 智宅焕20 分钟前
智能家居全国交付中前端工具与后端基础设施的系统集成架构:报价入口与交付兜底的闭环设计
前端·架构·智能家居
夏天要喝冰可乐39 分钟前
Codex 写 Three.js 大屏实录:800 行代码,和一条画反的弧线
前端·aigc
欣欣之王来了1 小时前
v-bind语法糖::属性名的简写方式
前端·学习·架构·项目·vue3教程
2601_954005621 小时前
# ricon SVG 编辑器:工业图元的“军火工厂“
前端·物联网·数学建模·架构·编辑器·制造
codeniu1 小时前
一个人,5天,从想法到上线:我用 TRAE 跑通全链路开发的完整实录
前端
shaibdoio1 小时前
RPA自动化获客怎么落地?瞬维AI评论区工程实践
前端·自动化·rpa·长沙瞬维ai