Junior
Фарқи байни ду роҳи муайян кардани функсия чист?
sobes.tech AI
Ҷавоб аз AI
Ҳамма асосий фарқ this контекстида.
| Функцияни таърифлаш усули | Фарқ |
|---|---|
функция эълон қилиш |
this контексти, функцияни қандай чақиришга қараб белгиланади. Код ишга туширилишидан олдин кўтарилади (hoisting). |
ўқ функция |
this контексти атрофдаги (лексикал) контекстдан мерос олади. Кўтарилмайди (hoisting йўқ). |
// функция эълон қилиш
function одатийФункция() {
console.log(this); // `this` чақиришга боғлиқ
}
// ўқ функция
const ўқФункция = () => {
console.log(this); // `this` функция қай тарзда таърифланганидан мерос олади
};
Ўқ функциялар ўзининг arguments объектига ҳам эга эмас (ташқи контекстдан олинади) ва new оператори билан конструктор сифатида ишлатилмайди.