JS - Arrow Function الدوال السهمية
JavaScript - الدوال السهمية (Arrow Functions)
🔸 الدوال السهمية (Arrow Functions) هي طريقة مختصرة لتعريف الدوال في JavaScript، وتم تقديمها في ES6.
توفر كتابة أكثر بساطة، لكنها تختلف قليلًا عن الدوال العادية من حيث التعامل مع this
.
🔹 الصيغة الأساسية
// دالة عادية
function add(a, b) {
return a + b;
}
// دالة سهمية
const add = (a, b) => {
return a + b;
};
---
🔹 الصيغة المختصرة لدوال بسيطة
إذا كانت الدالة تحتوي على سطر واحد فقط وتُرجع قيمة، يمكن حذف الأقواس وreturn
.
const multiply = (a, b) => a * b;
---
🔹 دالة بسهم بمعامل واحد
const greet = name => "مرحبًا " + name;
console.log(greet("Mahmoud")); // مرحبًا Mahmoud
📌 إذا كان هناك معامل واحد فقط، يمكن حذف الأقواس.
---🔹 دالة بسهم بدون معاملات
const hello = () => "أهلاً!";
---
🔹 ملاحظة مهمة حول this
الدوال السهمية لا تملك this
خاص بها، بل تأخذ this
من السياق المحيط.
لذلك لا تُستخدم غالبًا في الكائنات (objects
) التي تعتمد على this
الداخلي.
const person = {
name: "Noor",
greet: () => {
console.log("Hello " + this.name); // undefined
}
};
---
⚠️ ملاحظات ختامية
- الدوال السهمية ممتازة للمهام البسيطة والتعامل مع callbacks.
- لا يمكن استخدامها كدالة مُنشئة (constructor).
- تأخذ
this
من السياق الذي كُتبت فيه (lexical this).
تعليقات
إرسال تعليق