Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

289
Visualizações
How can I make this Javascript code more Dry?

This is for one of the assignments on Odin Project. As i'm testing things out, i'm realizing how this code is bad because it's not DRY. I would just be creating more and more book objects. How can I make this more clean?

let myLibrary = [];

    function Book(title, author, pages, hasRead){
      this.title = title;
      this.author = author; 
      this.page = pages;
      this.hasRead = hasRead;
    };
    
    function addBookToLibrary(newBook){
      return myLibrary.push(newBook)
    };
    
    let newBook = new Book("Wool", "Hugh Howey", "592", false);
    let lifeOfPi = new Book("Life of Pi", "Yann Martel", "392", false);
    
    addBookToLibrary(newBook);
    addBookToLibrary(lifeOfPi);
    console.log(myLibrary);

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

You could do something like this, so that you have a "BookLibrary" class.

// Make the class "BookLibrary"

var BookLibrary = function() { 

    
    this.myLibrary = [];


    this.addBookToLibrary = function(title, author, page, hasRead) {

        var newBook = {}; // a book new object to be stored to array

        newBook.title = title;
        newBook.author = author;
        newBook.page = page;
        newBook.hasRead = hasRead;

        this.myLibrary.push( newBook ); // add to collection of books

    }
    
}

// test demo

// instantiate the object 
var books = new BookLibrary();

// add some books
books.addBookToLibrary("Wool", "Hugh Howey", "592", false);
books.addBookToLibrary("Life of Pi", "Yann Martel", "392", false);

// see if it worked
console.log( books.myLibrary );

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda