Middle
Čím sa líši šípová funkcia od bežnej pomenovanej funkcie?
sobes.tech AI
Odpoveď od AI
Šípové funkcie v JavaScripte sa od bežných pomenovaných funkcií líšia v niekoľkých kľúčových bodoch:
- Kontext
this: Šípové funkcie nemajú vlastnýthis; dedičiathisz okolia lexikálneho kontextu. Bežné funkcie majú vlastnýthis, ktorý závisí od spôsobu volania. - Chýba
arguments: Šípové funkcie nemajú objektarguments. Na prístup k argumentom je potrebné použiť parametre alebo rest parametre. - Nie je možné ich použiť ako konštruktor: Šípové funkcie nemôžu byť volané s
new. - Syntax: Šípové funkcie sú kratšie a pohodlnejšie na písanie krátkych funkcií.
Príklad:
const obj = {
value: 42,
regularFunc: function() { return this.value; },
arrowFunc: () => this.value
};
console.log(obj.regularFunc()); // 42
console.log(obj.arrowFunc()); // undefined, pretože `this` neukazuje na `obj`