Oi Matheus, tudo bem?
Primeiramente, é ótimo que você esteja buscando outras formas de entender o conteúdo e de aplicá-lo. Quanto à sua solução, ela parece estar correta e não deve trazer problemas para o código.
Na sua solução, você utilizou o método filter() para filtrar os livros disponíveis, ou seja, aqueles que possuem quantidade maior que zero. O método filter() é uma das formas de percorrer e manipular arrays em JavaScript, e ele cria um novo array com todos os elementos que passam no teste da função fornecida.
Dessa forma, ao utilizar livros.filter(livro => livro.quantidade > 0), você está percorrendo o array livros e criando um novo array livrosDisponiveis com apenas os livros que possuem a propriedade quantidade maior que zero. Esse novo array é então passado como parâmetro para a função mostrarLivrosNaTela().
Em relação à sua preocupação sobre se essa solução é válida, sim, ela é válida e não deve trazer problemas para o código. De fato, essa é uma das formas de se resolver o problema proposto na atividade, e pode ser uma boa alternativa para quem teve dificuldades com a solução proposta pelo professor.
Espero que tenha te ajudado.
Um abraço e bons estudos.