Oii Débora, tudo bem?
Essa abordagem tem algumas vantagens importantes, especialmente quando pensamos em escalabilidade e manutenção do código.
Ao criar um objeto para cada tarefa, como no exemplo:
const tarefa = {
descricao: textarea.value
}
Você Tá, na verdade, preparando o terreno para uma possível expansão do seu aplicativo. Imagine que, no futuro, você queira adicionar mais informações a cada tarefa, como uma data de vencimento, uma categoria, ou até mesmo um status (completo, pendente, etc.). Utilizando um objeto, você pode facilmente adicionar essas novas propriedades sem alterar a estrutura fundamental do seu código.
E, ao trabalhar com objetos, você pode passar essas informações de maneira mais organizada entre diferentes funções ou componentes do seu aplicativo. Por exemplo, se você decidir implementar uma função que exibe todas as tarefas, será muito mais fácil manipular esses dados se eles estiverem estruturados como objetos.
Outro ponto importante é que, ao armazenar as tarefas como objetos em um array e eventualmente no localStorage
, você está criando uma base para que esses dados possam ser facilmente acessados, modificados ou removidos individualmente, baseando-se em qualquer uma de suas propriedades.
Espero ter ajudado.
Um abraço e bons estudos.