document.querySelector('form').addEventListener('submit', e => {
e.preventDefault();
const title = input.value;
fetch('?action=add', {
method: 'POST',
body: new URLSearchParams({
title: title,
token: token,
}),
})
.then(response => response.json())
.then(json => {
addTodo(json.id, title);
});
input.value = '';
input.focus();
});
このコードにおいてconst title = input.value
の中は最初は、input
の中身になるのはわかります。
が非同期処理でinput.value = ''
この部分から先に処理をされて、中身は空文字列になりそのあとにfetch
の中の処理が行われるような感じがしてしまいます。
なぜ、fetch
の中身のtitle
は空文字列にならないのですか?
この回答を見るにはプレミアムプランへの登録が必要です
プレミアムプランとは?