جلست ابحث لوقت شوي طويل عن فوائد استعمال closure لكن ما لقيت سبب مقنع كل الي فهمته ان الوصول يصير غير مباشر للدوال الداخلية فقط
ما فائدة استعمال closure في جافا سكريبت
الـclosure ليست شيئاً تستعمله حين تريد استعماله بل حين تحتاج إليه، مثلاً ما فوائد استعمال المطرقة ؟ هذا سؤال غير منطقي وإنما السؤال المنطقي هو " متى نستعمل المطرقة" والجواب هو "حين نريد أن ندق مسماراً في الحائط مثلاً"
اﻵن لنسأل متى نستعمل closure ؟ ببساطة حين نمرر callback إلى تابع ويحتاج هذا الـcallback إلى متحول معرف خارجه، مثال:
var mainElement = document.getElementById("main")
setTimeout(() => {
mainElement.innerHTML="مرت ثلاث ثوان";
},3000)
التعليقات