~/questoes/programacao
A busca por palavra-chave em uma To Do List utiliza o método filter() do JavaScript para verificar se o texto de cada tarefa contém a palavra digitada pelo usuário. Esse é um dos array methods mais práticos para filtrar dados em React, permitindo criar uma funcionalidade de pesquisa eficiente e responsiva.
O filter() percorre cada tarefa na lista e retorna apenas aquelas que contêm a palavra-chave buscada. Esse método é perfeito para busca porque cria um novo array com os resultados, sem modificar o estado original, mantendo a aplicação previsível e eficiente.
O filter() é o método ideal para busca. Ele testa cada tarefa com uma condição (por exemplo, se o título inclui a palavra digitada) e retorna um novo array apenas com as tarefas que passam no teste. Simples, direto e perfeito para pesquisa em listas.
O map() transforma elementos de um array em outros elementos, não filtra. Ele seria usado para converter uma lista de tarefas em uma lista de títulos, por exemplo, mas não localiza tarefas por palavra-chave. A busca exige seleção, não transformação.
useState armazena dados no estado da aplicação, mas não é responsável por implementar a lógica de busca. Você usa useState para guardar o texto que o usuário digita no campo de pesquisa, mas quem realmente busca as tarefas é o filter().
useEffect sincroniza efeitos colaterais como requisições ao servidor, mas uma busca local por palavra-chave não precisa disso. A busca acontece instantaneamente no navegador, filtrando o array existente, sem necessidade de comunicação com banco de dados.