函数中使用promise,返回和不返回promise有什么区别

解释下下面代码的意思:

  我想在han方法res赋值成功后,再执行han1进行其他赋值操作,但是不能在han的then中进行han1中的赋值(实际情况中,han方法要复用)
这个时候我发现han中promise 不添加return的情况下,han1中的赋值为空。使用return之后,赋值正常,代码如下:

加了return结果:

没有加return结果:

我不理解的是这个return,为什么会造成这个结果,求大佬解答

回答

不return的时候,han方法的返回值默认是个void
而下面调用的时候很明显的用了await,await一个void是没有意义的,并不会等待这个方法,下面的han2直接就执行了,这个时候han1可能还没还执行完,res2自然取不到值。
new Promise相当于创建了一个异步方法,使用await才能“等待”这个方法,拿到结果,然后继续往下执行。

以上是函数中使用promise,返回和不返回promise有什么区别的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>