Sobes.tech
Junior

Ikki funktsiya belgilash usullari o'rtasidagi farq nima?

sobes.tech AI

AIdan javob

Asosiy farq this kontekstidir.

Funksiya belgilash usuli Farqi
funksiya e'lon qilish this konteksti funksiyani qanday chaqirilganiga qarab aniqlanadi. Kod bajarilishidan oldin (hoisting) ko'tariladi.
ok funksiyasi this konteksti atrofdagi (lexikal) kontekstdan meros oladi. Ko'tarilmaydi (hoisting yo'q).
// funksiya e'lon qilish
function oddiyFunktsiya() {
  console.log(this); // `this` chaqiruvga bog'liq
}

// ok funksiyasi
const okFunktsiya = () => {
  console.log(this); // `this` funksiyaning ta'riflangan kontekstidan meros oladi
};

Ok funksiyalari o'zining arguments ob'ektiga ham ega emas (u tashqi kontekstdan olinadi) va new operatori bilan konstruktor sifatida ishlatilmaydi.