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

JS消除异步传染性

一句话思路:调两次

先将原生fetch保存下来,修改原生fetch,在原生fetch中去用保存下来的原生fetch去做真实的请求,期间不用等待,直接throw真实请求的promise出去,真实请求成功或失败,都将数据保存在缓存变量中,然后在throw出去的真实请求promise中等待完成后再执行一遍业务函数。

functionfn1(){varv=fn2();console.log(1,v)}functionfn2(){returnfetch('https://api.thedogapi.com/v1/images/search?include_breed=1&breed_id=%27')}run(fn1)
functionrun(func){varoldfetch=window.fetch;varcache={status:'pending',value:null,}// 改造fetchfunctionnewFetch(...args){if(cache.status==='fullfiled'){returncache.value;}elseif(cache.status==='reject'){throwcache.value}varp=oldfetch(...args).then(res=>res.json()).then((value)=>{cache.status='fullfiled'cache.value=value}).catch((err)=>{cache.status='reject'cache.value=err})throwp;}window.fetch=newFetch// 执行functry{func()}catch(e){// 如果是promiseif(einstanceofPromise){e.finally(()=>{window.fetch=newFetch;func();window.fetch=oldfetch;})}}// 恢复fetchwindow.fetch=oldfetch}
http://www.jsqmd.com/news/512698/

相关文章:

  • 2026年日立空调选购后售后保障,资质齐全24小时服务电话是啥 - myqiye
  • IT疑难杂症诊疗室
  • 模板方法模式:复杂业务代码的解耦与复用之道
  • 阿里云代理商:阿里云无影云电脑部署 OpenClaw 接入钉钉机器人全攻略
  • 动态调整转弯率才是灵魂所在
  • UG CAM加工二次开发,型腔铣CAVITY_MILL设置 切削参数-刀路方向 向内、向外API方法
  • 分布式AI Coding: Claude Code 系统架构与技术方案设计文档 1
  • 2026揭阳雄盛橄榄酒选购支招,实力与客户反馈能满足自饮不 - mypinpai
  • 写论文如何又快又好?资深教授推荐这几个AI写作辅助软件
  • 广州钡源:电源模块5大常见故障及成因分析
  • 实用工具分享:让论文图表、数据表述更专业的AI写作辅助软件
  • python基础第一课(自行下好pycharm,并进行练习)
  • 2026年国贤府PARK深度解析:从政企共建模式看未来社区发展新范式推荐 - 十大品牌推荐
  • Comsol光学仿真模型:纳米球/柱Mie散射多级分解
  • 从入门到精通:InkCanvas作为网课演示利器的完整使用指南
  • 高频方波电压注入IPMSM无感控制算法Simulink仿真调试与实际应用探索
  • 《数据结构与算法》-- 数据结构的通识
  • 三相不平衡电网条件下PWM整流电路仿真模型与双闭环控制策略研究
  • 半颗星教育电话查询:培训课程咨询与学习路径解析 - 十大品牌推荐
  • 避坑指南:Matlab串口通信实时显示图像/波形时,数据解析与界面卡顿的解决方案
  • Sigmoid 的深度理解与运用
  • 收藏!小白程序员必看:AI大模型如何轻松搞定复杂销售配置?
  • 无感定位与轨迹建模融合的仓储空间透明化管理技术路径
  • Iris技术实现解析:真正减少蓝光辐射的专业护眼软件技术原理
  • 靠谱的AI搜索优化公司多少钱,珠海性价比高的推荐 - myqiye
  • 2026年北京和利时电机产品质量有保障吗,价格贵不贵 - mypinpai
  • LeetCode 3567. 子矩阵的最小绝对差【暴力枚举】中等
  • 光储并网系统里,虚拟同步机(VSG)控制是个挺有意思的技术活。今天咱们就拆开看看这玩意怎么把光伏板、储能电池和电网揉在一起玩的,顺便撸点代码助助兴
  • AIGC检测算法更新后AI率飙升?完整应对攻略来了
  • 大模型发展全解析:从Transformer到推理模型,小白也能轻松入门收藏!