Constructori de obiecte și obiecte în JavaScript?
În lumea vie a programării orientate pe obiecte cunoaștem deja importanța claselor și a obiectelor, dar, spre deosebire de alte limbaje de programare, JavaScript nu are clasele tradiționale, așa cum vedem în alte limbaje. Dar JavaScript are obiecte și constructori care funcționează în mare parte în același mod pentru a efectua același tip de operații.

  • Constructori sunt funcții generale JavaScript care sunt utilizate cu ajutorul cuvântului cheie „new”. Constructorii sunt de două tipuri în JavaScript și anume constructori încorporați (array și obiect) și constructori personalizați (definesc proprietăți și metode pentru obiecte specifice).
  • Constructorii pot fi utili atunci când avem nevoie de o modalitate de a crea un „tip” de obiect care poate fi utilizat de mai multe ori fără a fi nevoie să redefinim obiectul de fiecare dată și acest lucru ar putea fi realizat folosind funcția Object Constructor. Este o convenție de a scrie cu majusculă numele constructorilor pentru a le distinge de funcțiile obișnuite.

De exemplu, luați în considerare următorul cod:

function Automobile(color) { this.color=color;}var vehicle1 = new Automobile ("red");

Funcția „Automobile()” este un constructor de obiecte, iar proprietățile și metodele sale, adică „color”, sunt declarate în interiorul ei prin prefixarea cu cuvântul cheie „this”. Obiectele definite cu ajutorul unui constructor de obiecte sunt apoi transformate în instanți cu ajutorul cuvântului cheie „new”.

Când este apelat new Automobile(), JavaScript face două lucruri:

  1. Cree un nou obiect(instanță) proaspăt nouț Automobile() și îl atribuie unei variabile.
  2. Setează proprietatea constructorului, adică „color” a obiectului la Automobile.

Metoda Object.create()
Metoda Object.create() este utilizată pentru a crea un nou obiect cu prototipul obiectului și proprietățile specificate. Metoda Object.create() returnează un nou obiect cu obiectul prototip și proprietățile specificate.

Aplicații:

  • Object.create() se utilizează pentru implementarea moștenirii.

Sintaxa:

Object.create(prototype)

Parametrii utilizați:

  1. prototip :
  2. Este obiectul prototip din care trebuie creat un nou obiect.

  3. propertiesObject : Este un parametru opțional. Acesta specifică proprietățile enumerabile care trebuie adăugate obiectului nou creat.

Valoare de retur:
Object.create() returnează un nou obiect cu obiectul prototip și proprietățile specificate.

Exemple ale funcției de mai sus sunt prezentate mai jos.

Exemple:

Explicație: În acest exemplu, există două funcții „fructe” și „măr”.Se creează o nouă instanță de măr care se numește „app” și care a fost specificată cu prototipul și proprietatea „fructe”, adică this.name = ‘fruct 1’.

Explicație: În acest exemplu, există două funcții „fruits” și „apple”.Se creează o nouă instanță a mărului care se numește „app” și a fost specificată cu prototipul și proprietatea „fruits”, adică this.name = ‘fruit 1’ și this .season = ‘summer’.

Codurile pentru funcția de mai sus sunt prezentate mai jos.

Codul 1:



OUTPUT :

"fruit 1"

Codul 2:

"fruit 1"

:



OUTPUT :

"fruit 1""summer"

Excepții :

  • Obiect.Metoda create( ) aruncă o excepție de tip TypeError dacă parametrul propertiesObject nu este null.
  • Metoda object.create( ) aruncă o excepție de tipError dacă parametrul propertiesObject este un obiect care nu este primitiv.

.

Lasă un răspuns

Adresa ta de email nu va fi publicată.