假设我有一个返回 Promise 的函数 functionThatReturnsPromise
,并且我在普通函数 normalFunction
中使用该函数。
normalFunction() {
functionThatReturnsPromise().then(() => do something,);
}
我知道我可以使用 functionThatReturnsPromise().then(...)
在 normalFunction
中等待 functionThatReturnsPromise
但如果我想要怎么办当我在其他地方使用我的 normalFunction
时,normalFunction
完成吗?
anotherNormalFunction() {
normalFunction() // here i want this function to finish before proceeding
// to the next line
}
我尝试过 normalFunction().then(...)
和 await normalFunction()
但这些似乎不起作用。可能吗?
最佳答案
normalFunction
将在执行下一行之前完成。
这只是 normalFunction
除了触发异步函数之外什么都不做。
如果您想等待异步函数完成后再继续,则需要更改 normalFunction
以便它返回一个在异步函数解析之前不会解析的 Promise。
例如该异步函数返回的 promise 。
normalFunction() {
return functionThatReturnsPromise().then(() => do something,);
}
关于javascript - 等待同步函数完成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56936223/