Javascript Object.setPrototypeOf ()

Методът JavaScript Object.setPrototypeOf () задава прототипа на определен обект на друг обект или нула.

Синтаксисът на setPrototypeOf()метода е:

 Object.setPrototypeOf(obj, prototype)

В setPrototypeOf()метода, който е статичен метод, се нарича използване на Objectимето клас.

setPrototypeOf () Параметри

В setPrototypeOf()метода се в:

  • obj - Обектът, който трябва да има своя прототип.
  • прототип - Новият прототип на обекта (обект или нула).

Върната стойност от setPrototypeOf ()

  • Връща посочения обект.

Забележка: Промяната ((Prototype))на обекта в момента е много бавна операция във всеки браузър и JavaScript механизъм.

Пример 1: Използване на 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!

Изход

 Маркус, лай!

Пример 2: Използване на 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!

Изход

 име: "Marcus" звук: "кора" __proto__: конструктор: клас Куче въвеждане: ƒ въвеждане () __proto__: makeSound: ƒ makeSound () __proto__: Обект Marcus, кора!

Препоръчително четене: Javascript Object isPrototypeOf ()

Интересни статии...