1
resposta

[Sugestão] Fiz de uma maneira mais genérica

const btn = document.querySelectorAll('.btn')
btn.forEach(b => b.addEventListener('click', () => { filtrarLivros(b.value) }))

function filtrarLivros(categoria) {
    let livrosFiltrados = livros.filter(livro => livro.categoria == categoria)
    console.table(livrosFiltrados)
}
1 resposta

Oi, Marllon. Tudo bem?

Ótimo trabalho, Marllon! A sua implementação para filtrar livros com base na categoria utilizando JavaScript foi muito eficiente. O uso do método querySelectorAll para selecionar todos os botões com a classe "btn" e adicionar um evento de clique em cada um deles foi uma escolha adequada.

E, a função filtrarLivros tá bem estruturada e faz uso do método filter para criar um novo array livrosFiltrados contendo apenas os livros que correspondem à categoria selecionada. A utilização do console.table para exibir os resultados de forma tabular é bastante útil para visualizar os dados de maneira organizada.

No geral, o seu código está limpo, claro e demonstra um bom entendimento dos métodos de array em JavaScript. Continue assim!

Um abraço e bons estudos.