Izmantojot metodi Object.create (), tiek izveidots jauns objekts, izmantojot attiecīgā objekta prototipu.
Metodes sintakse create()
ir šāda:
Object.create(proto, propertiesObject)
create()
Metodi, kas ir statiska metode, sauc izmantojot Object
klases nosaukumu.
izveidot () parametrus
create()
Metode ņem in:
- proto - objekts, kuram vajadzētu būt jaunizveidotā objekta prototipam.
- propertiesObject (pēc izvēles) - objekts, kura pašskaitāmie rekvizīti norāda rekvizītu aprakstus, kas jāpievieno jaunizveidotajam objektam. Šīs īpašības atbilst
Object.defineProperties()
.
Atgriezt vērtību no izveides ()
- Atgriež jaunu objektu ar norādīto objekta prototipu un īpašībām.
Piezīme: Ja proto nav null
vai ir Object
, TypeError
tiek izmests.
Piemērs: Object.create () izmantošana
let Animal = ( isHuman: false, sound: "Unspecified", makeSound() ( console.log(this.sound); ), ); // create object from Animal prototype let snake = Object.create(Animal); snake.makeSound(); // Unspecified // properties can be created and overridden snake.sound = "Hiss"; snake.makeSound(); // Hiss // can also directly initialize object properties with second argument let properties = ( isHuman: ( value: true, ), name: ( value: "Jack", enumerable: true, writable: true, ), introduce: ( value: function () ( console.log(`Hey! I am $(this.name).`); ), ), ); human = Object.create(Animal, properties); human.introduce(); // Hey! I am Jack.
Rezultāts
Neprecizēts Hiss Hey! Es esmu Džeks.
Ieteicamā literatūra: Javascript Object isPrototypeOf ()