Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Sugestão] Sugestão diferente.

O meu código mesmo colocado o value="disponivel" no HTML não estava funcionado então fiz diferente e funcionou.

`function filtrarLivros() {
    const elementoBtn = document.getElementById(this.id);
    const categoria = elementoBtn.value;
    let livrosFiltrados;
    if (categoria === 'disponivel') {
        // Filtra livros com quantidade maior que 0
        livrosFiltrados = livros.filter(livro => livro.quantidade > 0);
    } else {
        // Filtra livros pela categoria escolhida
        livrosFiltrados = livros.filter(livro => livro.categoria === categoria);
    }
    exibirLivrosNaTela(livrosFiltrados);
} `
1 resposta
solução!

Oi, Priscila! Como vai?

Obrigada por compartilhar seu código com a comunidade Alura!

Gostei de como você usou a estrutura condicional para filtrar os livros disponíveis. A abordagem de verificar a quantidade maior que zero torna o código mais flexível.

Você sabia que também é possível simplificar a filtragem usando o operador ternário? Por exemplo:


function filtrarLivros() {  
    const categoria = this.value;  
    const livrosFiltrados = categoria === 'disponivel'  
        ? livros.filter(livro => livro.quantidade > 0)  
        : livros.filter(livro => livro.categoria === categoria);  

    exibirLivrosNaTela(livrosFiltrados);  
}

Essa versão reduz a quantidade de linhas, mantendo a lógica clara.

Para saber mais sobre Operador Ternário, recomendo esse conteúdo.

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!