A idéia por trás da implementação de herança em JavaScript é adicionar novos objetos que são derivados dos objetos existentes. Quando o objeto recém -criado se torna uma criança ou objeto derivado de uma classe pai, ele pode herdar todos os seus métodos e propriedades.
Este artigo vai discutir tipos de Herança em JavaScript. Então vamos começar!
Tipos de herança em JavaScript
O JavaScript suporta os seguintes tipos de herança:
Discutiremos cada um dos tipos de herança mencionados nas seções a seguir.
Herança prototípica em javascript
““Prototípico Herança”Permite acessar propriedades e métodos de um objeto pai. Nesse tipo de herança, um objeto recém -criado é permitido para herdar as propriedades e o método de um objeto existente. Normalmente, “Objeto.getPrototypeOf ()" e "Objeto.setPrototypeOf ()”Pode ser usado para obter e definir o protótipo de um objeto; No entanto, ES6 padroniza o “__proto__”Propriedade acessadora que pode ser utilizada para o propósito semelhante.
Sintaxe da herança prototípica em JavaScript
Objeto de Criança.__Proto__ = ParentObjectAqui "Objeto de Criança”Representa o objeto recém -criado que herda as propriedades e métodos de“ParentObject”.
Exemplo: como implementar a herança prototípica em javascript
Primeiro de tudo, criaremos dois objetos chamados “Bicicleta" e "Veneno”E adicione um“cor”Propriedade para a“Bicicleta“Objeto e um“nome”Propriedade para a“Veneno”Objeto:
Deixe a bicicleta =Usando “__proto__"Propriedade do"Veneno“Objeto, herdaremos as propriedades do“Bicicleta”Objeto:
Veneno.__proto__ = bicicleta;Por fim, exibiremos o “ter”(Venom.nome e "herdado”(Venom.cor) valores de propriedade de “Veneno”Objeto:
console.log ("Este é um" + veneno.cor + "" + veneno.nome);Herança pseudoclássica em javascript
A ideia de implementar o “Pseudoclássico Herança" é criar um “herdado”Função que auxilia a associar a classe infantil à classe dos pais.
Para esse fim, a herança pseudoclássica utiliza:
Agora, confira o exemplo abaixo para entender claramente a herança pseudoclássica.
Exemplo: como implementar a herança pseudoclássica em javascript
Vamos definir uma função construtora chamada “Bicicleta()”:
Função Bike ()Em seguida, criaremos um “info ()”Função que será herdada pelos objetos infantis de“Bicicleta”:
Bicicleta.protótipo.info = function ()Em nosso programa, declararemos outro objeto chamado “Veneno,”E utilizar o“Bicicleta.chamar()”Método para invocar o construtor de bicicletas ():
função veneno ()Então, vamos usar o “protótipo”Propriedade para implementar a herança pseudoclássica entre“Veneno“Objeto e“Bicicleta”Objeto:
Veneno.protótipo = objeto.Criar (bicicleta.protótipo);Na última etapa, o “novo“O operador é utilizado para criar as duas instâncias,“veneno" e "bicicleta“:
var venom = new Venom ();Depois de fazer isso, o “info () ” A função é invocada para ambas as instâncias:
veneno.info ();Como você pode ver na saída abaixo do dado, a herança pseudoclássica é implementada e a instância “veneno”Herdou e executou o“info ()”Funciona com sucesso:
Herança funcional em javascript
O mecanismo de herdar propriedades aplicando um função de aumento (Função com funcionalidade genérica) para uma instância de objeto é conhecida como “Herança funcional”. A função de aumento definida emprega uma extensão dinâmica de objeto para adicionar propriedades e métodos adicionais a uma instância do objeto. Você também pode usar seu “escopo de fechamento”Para manter alguns dados privados.
Exemplo: como implementar a herança funcional em JavaScript
Neste exemplo, criaremos um “Bicicleta“Objeto com um objeto interno chamado“x”:
Função Bike (Data)Então, criaremos um objeto filho chamado “Veneno”Que estabelece a herança com o“Bicicleta" aula. Este objeto infantil compreende uma função de aumento “informações”Que pode ter acesso ao“nome"Propriedade do"x”Objeto:
função veneno (dados)Para implementar a herança funcional, criaremos “veneno”Como uma instância infantil e passa o valor do“nome"Propriedade como"dados”Argumento:
var venom = veneno (name: "venom");O dado “console.registro()”O método buscará o valor do“x.nome”Propriedade do pai“Bicicleta”Objeto e imprimi -lo no console:
console.log (veneno.info ());Saída
Isso era tudo sobre os tipos de herança em JavaScript. Você pode explorá -los ainda mais de acordo com suas preferências.
Conclusão
Prototípico Herança, herança pseudoclássica e Funcional A herança são diferentes tipos de Herança em javascript. Um tipo prototípico de herança é implementado usando o “__proto__Propriedade, enquanto que, em herança funcional, um Aumentando Função é definida que acessa as propriedades da classe pai. Além disso, o Pseudoclássico A herança utiliza a construtor() função, “novoOperador e protótipo propriedade para incorporar herança entre dois objetos. Este artigo discutiu diferentes tipos de herança em JavaScript.