Middle
Функсияи ишора ва функсияи оддӣ бо номи оддӣ чӣ фарқ дорад?
sobes.tech AI
Ҷавоб аз AI
Функсияҳои стрелка дар JavaScript аз функсияҳои номнависшудаи оддӣ дар чанд нуқтаи асосӣ фарқ мекунанд:
- Мавқеи
this: Функсияҳои стрелка худthisнадоранд; онҳоthis-ро аз муҳити лексикалӣ мерос мебаранд. Функсияҳои оддӣthis-и худро доранд, ки аз усули даъват вобаста аст. - Намудани
arguments: Функсияҳои стрелка объектargumentsнадоранд. Барои дастрасӣ ба аргументҳо, бояд параметрҳо ё параметрҳои Rest истифода шаванд. - Намудани истифода ҳамчун конструктор: Функсияҳои стрелка бо
newдаъват карда намешаванд. - Синтаксис: Функсияҳои стрелка кӯтоҳтар ва қулай барои навиштани функсияҳои кӯтоҳ мебошанд.
Масалан:
const obj = {
value: 42,
regularFunc: function() { return this.value; },
arrowFunc: () => this.value
};
console.log(obj.regularFunc()); // 42
console.log(obj.arrowFunc()); // undefined, зеро `this` ба `obj` ишора намекунад