下記の部分について、
input.addEventListener('change', () => {
todos.forEach((item) => {
if (item.id === todo.id) {
item.isCompleted = !item.isCompleted;
}
});
localStorage.setItem('todos', JSON.stringify(todos));
});
todo
一つ一つに Event
をつけているため、checkbox
をクリックした todo
要素として区別できるため、下記のように forEach
を使って todo
一つ一つを IF で判別せずに書くコードでも、同じように動作するように思えました(わたしの勘違いかもしれません。。あと、説明が分かりづらくすみません)
input.addEventListener('change', () => {
todo.isCompleted = !todo.isCompleted;
localStorage.setItem('todos', JSON.stringify(todos));
});
このように簡略化した書き方でも問題ないでしょうか?
この回答を見るにはプレミアムプランへの登録が必要です
プレミアムプランとは?