Object e Object Constructors em JavaScript?
No mundo vivo da programação orientada a objectos já sabemos a importância das classes e objectos mas ao contrário de outras linguagens de programação, o JavaScript não tem as classes tradicionais como vistas em outras linguagens. Mas o JavaScript tem objetos e construtores que funcionam principalmente da mesma forma para realizar o mesmo tipo de operações.

  • Construtores são funções gerais do JavaScript que são usadas com a “nova” palavra-chave. Construtores são de dois tipos em JavaScript i.e. construtores embutidos(array e objeto) e construtores personalizados(definem propriedades e métodos para objetos específicos).
  • Construtores podem ser úteis quando precisamos de uma maneira de criar um objeto “tipo” que pode ser usado várias vezes sem ter que redefinir o objeto toda vez e isso pode ser conseguido usando a função Construtor de Objetos. É uma convenção para capitalizar o nome dos construtores para distingui-los das funções regulares.

Por exemplo, considere o seguinte código:

function Automobile(color) { this.color=color;}var vehicle1 = new Automobile ("red");

A função “Automobile()” é um construtor de objetos, e suas propriedades e métodos i.e. “color” é declarado dentro dele prefixando-o com a palavra-chave “this”. Os objetos definidos usando um construtor de objetos são então feitos instantes usando a palavra-chave “new”.

Quando novo Automobile() é chamado, JavaScript faz duas coisas:

  1. Cria um novo objeto(instância) Automobile() e o atribui a uma variável.
  2. Define a propriedade construtor i.e. “cor” do objeto para Automobile.

Object.create() Método
Object.create() methord é usado para criar um novo objeto com o protótipo especificado de objeto e propriedades. O método Object.create() retorna um novo objeto com o protótipo especificado de objeto e propriedades.

Aplicações:

  • Object.create() é usado para implementar a herança.

Sintax:

Object.create(prototype)

Parâmetros usados:

  1. protótipo :
  2. É o objecto protótipo a partir do qual um novo objecto tem de ser criado.

  3. propertiesObject : É o parâmetro opcional. Ele especifica as propriedades enumeradas a serem adicionadas ao objeto recém-criado.

Return Value:
Object.create() retorna um novo objeto com o objeto protótipo e propriedades especificados.

Exemplos da função acima são fornecidos abaixo.

Exemplos:

Explicação: Neste exemplo, há duas funções “frutas” e “maçã”. Uma nova instância de maçã é criada que é denominada como “maçã” e foi especificada com o protótipo e propriedade de “frutas”, ou seja, this.name = ‘fruit 1’.

Explicação: Neste exemplo, existem duas funções “frutas” e “maçã”. Uma nova instância de maçã é criada que é nomeada como “maçã” e foi especificada com o protótipo e a propriedade de “frutas” ou seja, this.name = ‘fruit 1’ e this .season = ‘summer’.

Códigos para a função acima são fornecidos abaixo.

Código 1:



OUTPUT :

"fruit 1"

Código 2:



OUTPUT :

Excepções :

  • Objecto.O método create( ) lança uma exceção TypeError se o parâmetro propertiesObject não for nulo.
  • Object.create( ) lança uma exceção TypeError se o parâmetro propertiesObject for um objeto não primitivo.

Deixe uma resposta

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