関数setWord(); の実行の流れで気になったのですが、全文字正解であれば、
1ゲーム目が終わったあとif (location === word.length)に従って、setWord();が実行されますよね。
でも、その後にまた、addEventListenerの直前にある、setWord();が実行されると思うのですが、
ウィンドウではそのようには見えていません。
これは単純に、setWord();の処理が速すぎて連続で見えていない、ということでしょうか?
setWord(); //新しいワードが表示される(1ゲーム目)
document.addEventListener('keydown', e => {
if (e.key !== word[location]) {
return;
}
location++;
target.textContent = '_'.repeat(location) + word.substring(location);
if (location === word.length) {
setWord(); //新しいワードが表示される(2ゲーム目、1回目)
}
});
↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
setWord(); //新しいワードが表示される(2ゲーム目、2回目?)
document.addEventListener('keydown', e => {...........});
この回答を見るにはプレミアムプランへの登録が必要です
プレミアムプランとは?