promise
从语法上看promise是一个构造函数,用来封装异步操作,可以获取其成功或失败的结果
实例化时,括号里面可以接收一个参数,参数是一个函数类型的值。(函数有两个形参resolve,reject这两名字随便写)
里面封装一个异步操作当调用了resovel函数就会把promise这个对象的状态变为成功的状态,就会执行p.then中的第一个函数
下面说一下then方法的返回结果,p.then返回的也是一个promise对象。(对象里面有promise的状态和值,他的结果是由.then的回调函数决定的。如果回调函数返回结果是一个非promise则状态为resolved,)
补充:回调函数内部如果不写return默认返回结果是一个undefined, 他不是一个promise对象所以状态也是resolved.
如果回调函数返回的是一个promise对象,那么.then方法返回的promise状态就是里面那个promise的状态,举个最简单的例子:
最简单