Javascript Object.setPrototypeOf ()

JavaScript Object.setPrototypeOf () -metoden angir prototypen til et spesifisert objekt til et annet objekt eller null.

Syntaksen til setPrototypeOf()metoden er:

 Object.setPrototypeOf(obj, prototype)

Den setPrototypeOf()metoden, å være en statisk metode, kalles med Objectnavn klassen.

setPrototypeOf () Parametere

Den setPrototypeOf()metoden tar i:

  • obj - Objektet som skal ha sin prototype satt.
  • prototype - Objektets nye prototype (et objekt eller null).

Returverdi fra setPrototypeOf ()

  • Returnerer det angitte objektet.

Merk: Endring ((Prototype))av et objekt er for tiden en veldig langsom operasjon i alle nettlesere og JavaScript-motorer.

Eksempel 1: Bruke 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!

Produksjon

 Marcus, bjeff!

Eksempel 2: Bruke 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!

Produksjon

 navn: "Marcus" lyd: "bark" __proto__: konstruktør: klasse Hund introdusere: ƒ introdusere () __proto__: makeSound: ƒ makeSound () __proto__: Objekt Marcus, bark!

Anbefalt lesing: Javascript Object isPrototypeOf ()

Interessante artikler...