美文网首页
关于promise

关于promise

作者: 米卡卡米 | 来源:发表于2022-02-22 13:58 被阅读0次

本文章完全参考 阮一峰老师的es6-promise。如果有啥问题可以直接去看原文!

什么是promise,简单地来说,就是一个容器,保存着未来才会结束的事情(异步操作)

promise是个对象。
特点:1.对象状态不受外界影响。只有异步操作的结果,可以决定当前是什么状态,其他都无法改变。
有三种状态:pengding (进行中)fulfilled(已成功) rejected(已失败)
2.一旦状态改变,就不会再改变。任何时候都可以得到这个结果。
状态改变只有两种可能 => 1.pending > fulfilled(已成功)
2.pending > rejected(已失败)
状态一旦改变成功,则不会改变,一直保持这个结果,成为 resolved(已定型) 。即使添加回调函数,也是立即得到这个结果。
缺点:1.无法取消,一旦新建则立即执行,无法中途取消。2.如果不设置回调,则内部抛出的错误,不会反应到外部。3.如果处于pending状态,无法得知进展(刚开始还是即将完成?)


开始使用啦~
简单实用方法:

       let getData = function () {
                    return new Promise(function (resolve, reject) {
                        $.get(url.imgid, { id: ids }, function (d) {
                            $.get(url.img, { id: d.data.hdimg[0].id }, function (ds) {
                                resolve(ds);//=return d
                            })
                        })

                    })
                };

                getData().then(function (ds) {
                    console.log(ds);
                })

相关文章

  • 关于promise

    关于promise的 代码: var p=new Promise(function(resolve,reject)...

  • Promise对象

    Promise 多个异步回调: 详情关于promise对象的一些讲解 Promise.all() .catch()用法

  • Promise 概述

    关于Promise Promise实例一旦被创建就会被执行 Promise过程分为两个分支:pending=>re...

  • Promise/A+ 学习笔记

    1 什么是 Promise Promise 是前端流行的异步编程解决方案,而Promise/A+ 是一组关于 Pr...

  • 关于Promise

    一、为何会有Promise? 在JavaScript的世界中,所有代码都是单线程执行的。由于这个“缺陷”,导致Ja...

  • 关于Promise

    一、异步编程  由于JavaScript是单线程的,一次只能执行一个任务,如果有多个任务,那么就需要排队,但是这样...

  • 关于Promise

    说到异步,怎么说还是得有Promise这玩意 Promise 的含义 Promise 是一个保存着某个未来才会结束...

  • 关于Promise

    Promise.all () 可以使用Promise.all 封装多个请求,这时候返回的数据会封装成数组,在使用[...

  • 关于promise

    本文章完全参考 阮一峰老师的es6-promise。如果有啥问题可以直接去看原文! 什么是promise,简单地来...

  • 关于promise

    参考:阮一峰 promise 1.promise含义promise是异步编程的一种解决方案,比传统的解决方案(回调...

网友评论

      本文标题:关于promise

      本文链接:https://www.haomeiwen.com/subject/afljdktx.html