جافا سكريبت هي لغة متزامنة أحادية الخيط يمكنها تنفيذ أمر واحد فقط في كل مرة. ولن ينتقل إلى السطر التالي إلا بعد انتهاء السطر الحالي من تنفيذه. ومع ذلك، يمكن لـ JavaScript إجراء عمليات غير متزامنة باستخدام حلقة الأحداث، والوعود، وعدم المزامنة/الانتظار، وقائمة انتظار رد الاتصال (جافا سكريبت متزامن بشكل افتراضي).
كيف يتم تنفيذ كود جافا سكريبت؟
كل شيء في JavaScript يحدث داخل سياق التنفيذ (فكر في الأمر كمربع أو حاوية كبيرة). يتم تنفيذ كود JavaScript بالكامل ضمن سياق التنفيذ هذا. وله مكونان: مكون الذاكرة (البيئة المتغيرة) ومكون الكود (خيط التنفيذ).
أولاً، يتم إنشاء سياق التنفيذ العالمي. ضمن هذا، تقوم كل وظيفة بإنشاء سياق التنفيذ الخاص بها.
قبل تنفيذ أي سطر من التعليمات البرمجية، يتم تخصيص الذاكرة لجميع المتغيرات والوظائف.
كيف يتم تنفيذ الكود بعد تخصيص الذاكرة؟
يعمل محرك JavaScript عبر البرنامج بأكمله مرة أخرى (سطرًا بسطر) وينفذ التعليمات البرمجية.
دعونا نلقي نظرة على المثال التالي:
function add(a,b){ var ans = a b; console.log(ans); } var addition = add(6,5);
في هذا المثال، يتم إنشاء سياق التنفيذ العام أولاً، والذي يتكون من مكونين: مكون الذاكرة (MC) ومكون الكود (CC).
بالنسبة للوظائف، يتم تخزين رمز الوظيفة بالكامل في الذاكرة. بالنسبة للمتغيرات، يتم تخزين قيمة خاصة، غير محددة، في البداية.
عند استدعاء الوظيفة، يتم إنشاء سياق تنفيذ آخر. في مكون الذاكرة، يتم تخزين قيم المعلمات (a = 6، b = 5)، بينما تحتفظ المتغيرات مثل ans في البداية بالقيمة غير المحددة. في مكون الكود، يتم استخدام القيم من مكون الذاكرة لإجراء العملية (a b = 6 5 = 11). ثم تتم طباعة النتيجة على وحدة التحكم.
أتمنى أن يكون هذا الشرح قد أوضح المفهوم. إذا كان لديك أي أسئلة أو تصحيحات، فلا تتردد في طرحها في قسم التعليقات.
الاعتمادات لأكشاي سايني (راجع: [(https://youtu.be/iLWTnMzWtj4?si=WWMxDHM-v532vY7F)])
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3