Funções de fábrica JavaScript

Resumo: neste tutorial, você vai aprender sobre as funções de fábrica JavaScript que são funções que retornam objetos.

Introdução às funções de fábrica em JavaScript

uma função de fábrica é uma função que retorna um novo objeto. A seguir cria um objeto chamado pessoa john:

Code language: JavaScript (javascript)

Saída:

O john objeto tem duas propriedades: firstName e lastName, e um método getFullName() que retorna o nome completo.

Suponha que você precisa para criar outro objeto semelhante chamado jane, você pode duplicar o código da seguinte maneira:

Code language: JavaScript (javascript)

Saída:

O jane objeto tem as mesmas propriedades e método como o john objeto.

quanto mais objeto você deseja criar, mais código duplicado você precisa copiar.

para evitar copiar o mesmo código uma e outra vez, você pode desenvolver uma função que cria o objeto person :

Code language: JavaScript (javascript)

quando uma função cria um objeto, ela é chamada de função de fábrica. O createPerson() é uma função de fábrica porque retorna um novo objeto person.

o seguinte código utiliza a função de fábrica createPerson() para criar dois objectos john e jane:

Code language: JavaScript (javascript)

com a função de fábrica, você cria qualquer número dos objetos person que deseja sem duplicar o código.

quando você cria um objeto, esse objeto requer um espaço na memória. Se você tem mil objetos person, você precisa de mil espaços na memória para armazenar esses objetos. Essas pessoas objetos, no entanto, têm o mesmo método getFullName().

Para evitar a repetição do mesmo getFullName() função na memória, você pode remover o getFullName() método person objeto:

Code language: JavaScript (javascript)

E mover-se este método de outro objeto:

Code language: JavaScript (javascript)

E antes de chamar o getFullName() método person objeto, você pode atribuir o método do behavior objeto person objeto da seguinte maneira:

Code language: JavaScript (javascript)

Ele vai ser mais difícil se você tiver muitos métodos e atribuí-los manualmente.

é por isso que o método Object.create() entra em jogo.

O Objecto.método create ()

O Object.create() método cria um novo objeto usando um objeto existente como o protótipo do novo objeto:

Code language: CSS (css)

Assim, você pode usar o Object.create() da seguinte forma:

Code language: JavaScript (javascript)

Agora, você pode criar person objetos e chamar os métodos da behavior objeto:

Code language: JavaScript (javascript)

O código funciona perfeitamente bem. No entanto, na prática, você raramente verá as funções da fábrica. Em vez disso, você vai ver os construtores de funções ou as classes.

resumo

  • uma função de fábrica é uma função que retorna um novo objeto.
  • Use Object.create() para criar um objeto usando um objeto existente como um protótipo.
  • este tutorial foi útil ?
  • YesNo

You might also like

Deixe uma resposta

O seu endereço de email não será publicado.