• Promise基本使用


     Promise是JS中进行异步编程的新的解决方案

    • 表达:
      ①从语法上看:Promise是一个构造函数 (自己身上有allrejectresolve这几个方法,原型上有thencatch等方法)
      ②从功能上看:promise对象用来封装一个异步操作并可以获取其成功/失败的结果值

    promise 与 Ajax封装

    1. <div>promise 与 Ajax封装</div>
    2. <script>
    3. function sentAjax(url,data){
    4. return(
    5. new Promise((resolve,reject)=>{
    6. // resolve(1)
    7. let xhr = new XMLHttpRequest()
    8. xhr.onreadystatechange =()=>{
    9. if(xhr.readyState === 4){
    10. if(xhr.status >= 200 && xhr.status<300){
    11. resolve(xhr.response)
    12. }else{
    13. reject('出错了')
    14. }
    15. }
    16. }
    17. // 整理url中的参数
    18. let str=''
    19. for(key in data){
    20. str += `${key}=${data[key]}`
    21. }
    22. xhr.open('GET',url+'?'+ str)
    23. xhr.responseType="json"
    24. xhr.send()
    25. })
    26. .then(
    27. (value)=>{console.log('成功了',value)},
    28. (reason)=>{console.log(reason)}
    29. )
    30. )
    31. }
    32. sentAjax('https://api.github.com/search/users',{q:2})
    33. </script>

    Promise 的状态, promise 指定多个成功/失败回调函数,都会调用吗?_Allen 赵奇隆的博客-CSDN博客

  • 相关阅读:
    相控阵应用的理解
    uniapp 复制功能,ios复制不了,h5复制不了,部分浏览器无法复制
    Java并发编程--多线程间的同步控制和通信
    使用torch普通算子组合替代torch.einsum爱因斯坦求和
    PG 数据库的增删查改
    Idea工作中常用插件
    【JVM笔记】堆的核心概述与堆空间大小的设置与查看
    Quartz 基本使用,任务调度quartz详解,动态定时任务,job,Trigger,Scheduler
    【精选】OpenCV多视角摄像头融合的目标检测系统:全面部署指南&源代码
    C#界面里Control.Enabled 属性的使用
  • 原文地址:https://blog.csdn.net/zqlbanzhuan/article/details/128097095