O artigo anterior introduziu herança combinada e agora falaremos sobre as heranças restantes.
Herança de protótipo
Chame uma função e receba o objeto retornado por esta função. O protótipo deste objeto é o objeto de parâmetro passado para a função.
como:
function personobject (o) {função f () {} f.prototype = o; retornar novo f ();} var pessoa = {name: "nicholas", amigos: ["Shelby", "Court", "van"]} var pessoa_one = Persobject (pessoa);A partir do código acima, sabemos que a pessoa é o protótipo de pessoa_one. O ES5 adicionou um método para normalizar a herança do protótipo. Este método é object.create (). Este método possui dois parâmetros. O primeiro é um objeto como o protótipo do novo objeto, como a pessoa acima, e o segundo é um objeto que define atributos adicionais para o novo objeto. O segundo parâmetro é opcional.
como:
var person_one = object.create (pessoa, {nome: {value: "jon"}});Quando você deseja apenas manter um objeto semelhante a outro, pode usar a herança do protótipo.
Herança parasitária
Implemente a herança do protótipo em uma função e adicione suas próprias propriedades e métodos ao objeto recebido.
como:
função criativa (o) {var person_one = personobject (o); PERSON_ONE.SAYHI = function () {alert ("Hi"); } retornar Person_one;}Herança de combinação parasita
A herança combinada também tem suas desvantagens. Ele implementa dois atributos de herança, e a herança de combinação parasitária evita esse problema. As instâncias herdam atributos através dos construtores, enquanto o método do protótipo é herdado por meio de herança parasitária.
como:
função herança (subtipo, supertype) {var prototype = object (supertype.prototype); prototype.constructor = subtipo; subtype.prototype = prototype;}Ao chamar a função acima, o protótipo de subtye.prototype é supertype.prototype, que completa a herança do método do protótipo.
A análise JavaScript acima sobre herança é todo o conteúdo que compartilho com você. Espero que você possa lhe dar uma referência e espero que você possa apoiar mais o wulin.com.