Referente a seguinte linha: livros.filter(livro => livro.id === id)[0]
Em outras linguagens precisamos fazer o tratamento da lista para saber se retornou resultados, e aí sim podemos usar o "[0]" para pegar o primeiro elemento, caso contrário daria erro caso a lista retornasse vazia.
Em Node, esse tratamento não é necessário?