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

为什么选择做游戏网站做国外销售都上什么网站

为什么选择做游戏网站,做国外销售都上什么网站,免费的wordpress空间,建设一个人才网站需要的人才JS 中 async/await 功能介绍与使用演示 一、功能介绍基本概念 async:用于声明异步函数,返回一个 Promise 对象。即使函数内没有显式返回 Promise,也会隐式将返回值封装为 Promise.resolve()。await:仅能在 async 函数内部使用&…

JS 中 async/await 功能介绍与使用演示

一、功能介绍
  1. 基本概念

    • async:用于声明异步函数,返回一个 Promise 对象。即使函数内没有显式返回 Promise,也会隐式将返回值封装为 Promise.resolve()
    • await:仅能在 async 函数内部使用,用于等待 Promise 对象的解析(resolve)或拒绝(reject)。它使异步代码看起来类似同步代码,提升可读性。
  2. 核心特性

    • 异步流程同步化:通过 await 暂停函数执行,直到 Promise 完成,再继续后续逻辑。
    • 错误传播:若 await 后的 Promise 被拒绝(reject),会抛出错误,需用 try/catch 捕获。
    • 兼容性async/await 是 ES2017 引入的语法糖,底层基于 Promise,兼容现代浏览器和 Node.js。
  3. 使用场景

    • 替代回调函数和 .then() 链式调用,处理异步操作(如 API 请求、文件读写)。
    • 串行或并行执行多个异步任务,优化代码结构。

二、使用演示
  1. 基础示例:顺序执行异步任务

    // 模拟异步请求函数
    function fetchData(url) {return new Promise((resolve) => {setTimeout(() => {resolve(`Data from ${url}`);}, 1000);});
    }// 使用 async/await 顺序执行
    async function fetchSequentially() {try {const data1 = await fetchData('api1');console.log(data1); // Data from api1const data2 = await fetchData('api2');console.log(data2); // Data from api2} catch (error) {console.error('Error:', error);}
    }fetchSequentially();
    
  2. 并发执行异步任务
    使用 Promise.all 并行处理多个请求,减少总耗时:

    async function fetchConcurrently() {try {const [data1, data2] = await Promise.all([fetchData('api1'),fetchData('api2')]);console.log(data1, data2); // 同时输出两个结果} catch (error) {console.error('Error:', error);}
    }fetchConcurrently();
    
  3. 错误处理
    结合 try/catch 捕获异步错误:

    async function fetchWithErrorHandling() {try {const response = await fetch('https://invalid.url');const data = await response.json(); // 如果响应失败,此处会抛错} catch (error) {console.error('Caught error:', error);}
    }fetchWithErrorHandling();
    
  4. 实用场景:模拟延迟执行
    实现休眠函数:

    function delay(ms) {return new Promise((resolve) => setTimeout(resolve, ms));
    }async function delayedTask() {console.log('Task started');await delay(2000); // 暂停2秒console.log('Task completed');
    }delayedTask();
    

三、注意事项
  1. await 的局限性

    • 只能在 async 函数内使用,否则会抛出语法错误。
    • 后面可以是任意表达式(如字符串、数值),非 Promise 会被自动封装为 Promise.resolve()
  2. 错误处理

    • 未捕获的 reject 会导致 async 函数返回的 Promise 变为 reject 状态,需用 try/catch.catch() 处理。
  3. 性能优化

    • 避免过度串行:连续使用 await 会导致异步任务串行执行,降低性能。可改用 Promise.all 并发处理无关依赖的任务。
    • 不要阻塞主线程:长时间同步操作(如循环)中滥用 await 可能阻塞渲染,需谨慎设计异步流程。

四、总结

async/await 是 JavaScript 异步编程的语法糖,本质是基于 Promise,但提供了更简洁、易读的代码风格。它适用于大多数异步场景,尤其适合需要顺序执行或并发控制的场景。使用时需注意错误处理和性能优化,避免陷入同步思维的误区。

http://www.dtcms.com/a/558663.html

相关文章:

  • C语言完成Socket通信
  • 关于Delphi的一次吵架的后续
  • 深圳网站制作公司兴田德润官网多少中企动力为什么留不住人
  • 怎样制造网站图片教程手机建站源码
  • 视频网站建设流程vps 内存影响 网站
  • 网站内容规划ssh做的大型网站
  • 网站正则表达式怎么做怎么样才能自己做网站打广告
  • 快速部署远程vnc桌面 -docker部署
  • 网站建设运行状况做网站需要服务器还是主机
  • 网站信息核验单南充二手房最新出售信息
  • 开发 网站 团队建设摩托车官网官方网站
  • 易经风水传承者【谷晟阳】
  • 自己做培训需要网站吗甘肃建设厅网站注入
  • 网站自行备案成都附近旅游景区哪里好玩
  • wordpress 注册登陆插件外贸seo是什么意思啊
  • 网站开发调查问卷电影片头在线制作网站
  • 网站制作公司小邓管理咨询公司工作简报
  • 做一个网站多长时间专门做悬疑推理小说的阅读网站
  • 网站图片像素多少上海优化网站
  • 江苏海通建设有限公司网站广西网络广播电视台直播
  • AI基础概念-第一部分:核心名词与定义(二)
  • 无锡哪里做网站好网站开发技术的背景
  • 昌平电子网站建设怎么做英文的网站首页
  • AI大模型低成本使用攻略:阿波罗AI+Cherry Studio
  • 建筑设计网上课程哈尔滨seo优化服务商
  • 个人网站建设方案书使用几号纸wordpress建站环境搭建
  • 公司网站上传不了图片网页设计图片间距代码
  • TDengine 数学函数 CRC32 用户手册
  • 【LLM-Agent】七种agent协作模式
  • 买网站需要注意什么html5网页设计与实现