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

[Dúvida] Como posso fazer essa operação sem operadores ternários?

Como posso transformar essa linha de código em algo mais legível? usando if e else.

let livrosFiltrados = categoria == 'disponivel' ? livros.filter(livro => livro.quantidade > 0) : livros.filter(livro => livro.categoria == categoria)

fiz de varias formas porém o código não funciona!

1 resposta
solução!

Olá Gabriel, tudo bem?

Entendo que você queira transformar a linha de código em algo mais legível utilizando if e else. Uma forma de fazer isso seria:

let livrosFiltrados;

if (categoria == 'disponivel') {
  livrosFiltrados = livros.filter(livro => livro.quantidade > 0);
} else {
  livrosFiltrados = livros.filter(livro => livro.categoria == categoria);
}

Dessa forma, estamos atribuindo o valor de livros.filter(livro => livro.quantidade > 0) à variável livrosFiltrados caso a condição categoria == 'disponivel' seja verdadeira. Caso contrário, atribuímos o valor de livros.filter(livro => livro.categoria == categoria) à mesma variável.

Espero ter ajudado e bons estudos!