我正在学习 Promise 相关知识,想了解如何启动和停止异步函数,就像我的示例展示一样。它可以从开始时启动,点击按钮后停止,但似乎无法继续执行。
var stop = 0;
var elParrafo = document.getElementById('miParrafo');
function sendStop() {
stop = 1;
}
function sendStart() {
stop = 0;
}
function esperar(ms) {
return new Promise(function(resolve, reject) {
setTimeout(resolve, ms)
});
}
async function trabajar() {
while (stop === 0) {
elParrafo.innerHTML += " > ";
await esperar(50);
}
}
trabajar();
<form class="" action="index.html" method="post">
<input type="button" value="Stop" onclick="sendStop()">
<input type="button" value="Start" onclick="sendStart()">
</form>
<p id="miParrafo"></p>
trabajar
来停止/启动你的循环,但 Promise 不能被取消。 - Gabriele Petrioli