Promise

作者: 扶光_ | 来源:发表于2022-07-19 21:04 被阅读0次

    异步编程 也是一个构造函数

    那么什么是异步呢
    不会影响其他的进程(如果执行程序某一个程序出错下面的程序不受影响)

    new Promise(function(resolve,reject){
    //resolve 一切正常执行的函数
    //reject 出现错误的时候调用的函数
    })
    

    里面的两个参数实际上就是函数

    promise里面的三个方法

    1. then() 可以将参数中的函数添加到当前的正常执行序列
    2. catch() 代表promise的异常处理序列
      3.finally() promise执行到最后一定会执行的序列

    回调地狱

    写js的时候有些情况逻辑比较复杂,嵌套比较多
    回调函数的层层嵌套叫回调地狱

    原生写法

    var fn = function(value,callback){
              //  value是输出的内容,callback是回调
                setTimeout(function(){
                    console.log(value);
                    callback();
                },1000)
            }
    
            调用
            fn("first",function(){
                fn("second",function(){
                    fn("third",function(){
                        console.log("走完了");
                    })
                })
            })
    
    

    promise解决回调地狱

     var fn = function(name){
                return new Promise(function(resolve,reject){
                    setTimeout(function(){
                        console.log(name);
                        resolve();
                    },1000)
                })
            }
            fn("first").then(function(){
                return fn("second");
            }).then(function(){
                return fn("third");
            }).then(function(){
                return fn("forth");
            }).then(function(){
                console.log("end");
            })
    

    相关文章

      网友评论

          本文标题:Promise

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