Sobes.tech
Middle

Kuidas erineb noolefunktsioon tavapärasest nimetatud funktsioonist?

sobes.tech AI

Vastus AI-lt

Nooremad funktsioonid JavaScriptis erinevad tavapärastest nimetatud funktsioonidest mitmel olulisel viisil:

  • this kontekst: Nooremad funktsioonid ei oma oma this; need pärivad this ümbritsevast leksikaalsest kontekstist. Tavalistel funktsioonidel on oma this, mis sõltub kutsumise viisist.
  • arguments puudumine: Nooremad funktsioonid ei oma arguments objekti. Argumentidele juurdepääsuks tuleb kasutada parameetreid või rest-parameetreid.
  • Ei saa kasutada konstruktorina: Nooremad funktsioonid ei saa kutsuda new-ga.
  • Süntaks: Nooremad funktsioonid on lühemad ja mugavamad kirjutada lühikesi funktsioone.

Näide:

const obj = {
  value: 42,
  regularFunc: function() { return this.value; },
  arrowFunc: () => this.value
};

console.log(obj.regularFunc()); // 42
console.log(obj.arrowFunc());   // määramata, kuna `this` ei viita `obj`-ile