Javascript Object.setPrototypeOf ()

Die JavaScript Object.setPrototypeOf () -Methode setzt den Prototyp eines angegebenen Objekts auf ein anderes Objekt oder null.

Die Syntax der setPrototypeOf()Methode lautet:

 Object.setPrototypeOf(obj, prototype)

Die setPrototypeOf()Methode ist eine statische Methode und wird unter Verwendung des ObjectKlassennamens aufgerufen .

setPrototypeOf () Parameter

Die setPrototypeOf()Methode umfasst:

  • obj - Das Objekt, dessen Prototyp gesetzt werden soll.
  • Prototyp - Der neue Prototyp des Objekts (ein Objekt oder null).

Rückgabewert von setPrototypeOf ()

  • Gibt das angegebene Objekt zurück.

Hinweis: Das Ändern ((Prototype))eines Objekts ist derzeit in jedem Browser und jeder JavaScript-Engine sehr langsam.

Beispiel 1: Verwenden von Object.setPrototypeOf ()

 let Animal = ( makeSound() ( console.log(`$(this.name), $(this.sound)!`); ), ); // defining new Dog object function Dog(name) ( this.name = name; this.sound = "bark"; // setting prototype to Animal Object.setPrototypeOf(this, Animal); ) dog1 = new Dog("Marcus"); dog1.makeSound(); // Marcus, bark!

Ausgabe

 Marcus, belle!

Beispiel 2: Verwenden von Object.setPrototypeOf ()

 let Animal = ( makeSound() ( console.log(`$(this.name), $(this.sound)!`); ), ); // defining object class Dog ( constructor(name, age) ( this.name = name; this.sound = "bark"; ) introduce() ( console.log(`I'm $(this.name). I am $(this.age) years old.`); ) ) // Here Dog.prototype is passed as it is an object, while Dog is not an object Object.setPrototypeOf(Dog.prototype, Animal); dog1 = new Dog("Marcus", 3); console.log(dog1); dog1.makeSound(); // Marcus, bark!

Ausgabe

 Name: "Marcus" Ton: "Rinde" __proto__: Konstruktor: Klasse Hund einführen: ƒ einführen () __proto__: makeSound: ƒ makeSound () __proto__: Objekt Marcus, bellen!

Empfohlene Lektüre: Javascript-Objekt isPrototypeOf ()

Interessante Beiträge...