Sobes.tech
Middle

Odakle dolaze metode (npr. .toString() i dr.) kod primitivnih tipova podataka?

sobes.tech АИ

Одговор од АИ

Primitivni tipovi podataka u JavaScript-u (nizovi, brojevi, boolean vrednosti, Symbol, BigInt, null, undefined) zapravo nemaju metode. Međutim, kada pokušamo da pozovemo metodu na primitivnoj vrednosti, JavaScript je privremeno obavija u odgovarajući objekat-omotač (String, Number, Boolean, Symbol, BigInt).

Na primer, pozivanjem .toString() na nizu 'hello', JavaScript kreira privremeni objekat new String('hello'), poziva metodu toString() tog objekta, a zatim uništava privremeni objekat. Ovaj mehanizam se naziva autoboxing ili automatsko pakovanje.

Tipovi podataka null i undefined nemaju odgovarajuće objekte-omotače i stoga ne mogu imati metode. Pokušaj poziva metode na null ili undefined će izazvati grešku TypeError.