私のprobleはsetintervall機能についてです。 first()
とsecond()
実行が終了したら、thrice()
という関数を呼び出します。それには賛成できません。以下のコード:JavaScriptの停止間隔とアクション後
var oneFinish = false;
var twoFinish = false;
function first() {
console.log("FUNCTION first RUNNING");
for (i = 0; i < 5; i++) {
console.log("first " + i);
}
console.log("FUNCTION first FINISH");
oneFinish = true;
}
function second() {
console.log("FUNCTION second RUNNING");
for (i = 0; i < 10; i++) {
console.log("second " + i);
}
console.log("FUNCTION second FINISH");
twoFinish = true;
}
function thrice() {
var intev = setInterval(function() {
if (oneFinish && twoFinish) {
console.log("FUNCTION thrice RUNNING");
oneFinish = false;
twoFinish = false;
clearInterval(intev);
}
}, 3000);
console.log("FUNCTION thrice FINISH");
}
first();
second();
thrice();
出力は次のようなものです:
あなたは、出力の 最後で見るFUNCTION first RUNNING
first 0
first 1
first 2
first 3
first 4
FUNCTION first FINISH
FUNCTION second RUNNING
second 0
second 1
second 2
second 3
second 4
second 5
second 6
second 7
second 8
second 9
FUNCTION second FINISH
FUNCTION thrice FINISH
FUNCTION thrice RUNNING
、それは問題FUNCTION thrice FINISH
があなたのためだFUNCTION thrice RUNNING
あなたが非同期について聞いたことがありますか? –
はい、聞いたことがあります。なぜdownvote?もっと説明したいですか?あるいは、質問を嫌うのはなぜですか? – Aroniaina