المتغيرات والإعلانات المتغيرة هي المفاهيم الأساسية للغة، وسيتقنها المبتدئون بسرعة. وينطبق الشيء نفسه على الإعلان عن المتغيرات في JavaScript، فهو بسيط جدًا var (كلمة رئيسية) + اسم متغير (معرف).
الطريق 1
اختبار فار؛
var test = 5; وتجدر الإشارة إلى أنه لا يمكن تضمين هذه الجملة في الدالة، وإلا فإنها ستكون متغيرًا محليًا. هذه هي الطريقة الأولى للإعلان عن المتغيرات العالمية.
الطريق 2
اختبار = 5؛
بدون استخدام var، قم بتعيين قيمة مباشرة لاختبار المعرف، والذي سيعلن ضمنيًا عن اختبار المتغير العام. حتى لو كانت العبارة ضمن دالة، يصبح الاختبار متغيرًا عامًا عند تنفيذ الدالة.
الطريق 3
window.test;
window.test = 5; غالبًا ما تُستخدم هذه الطريقة لكشف بعض الوظائف للعالم بعد تنفيذ وظيفة مجهولة. مثل الجملة الأخيرة في JQuery1.5
window.jQuery = window.$ = jQuery;
إذا كنت تستخدم اختبار المتغير فقط، فلن يكون هناك فرق بين الطرق الثلاث. على سبيل المثال: سيتم عرض التنبيه (اختبار) 5. ومع ذلك، هناك اختلافات بين الطرق الثلاث في بعض الحالات. قم بتعريف ثلاثة متغيرات a1، a2، a3 بالطرق الثلاث المذكورة أعلاه على التوالي.
أ1 = 11؛
فار a2 = 22;
window.a3 = 33;
1. في النافذة
ل(في النافذة){
إذا (أ=='a1'||a=='a2'||a=='a3'){
تنبيه (أ)
}
}
IE6/7/8/9: يظهر ملف a3 فقط، مما يشير إلى أنه لا يمكن الحصول على المتغيرات العامة المعلنة من خلال الطريقتين الأولى والثانية من خلال النافذة.
Firefox/Chrome/Safari/Opera: تظهر جميعها a1 وa2 وa3، مما يشير إلى أنه يمكن الحصول على المتغيرات العامة المعلنة بثلاث طرق من خلال النافذة.
2.حذف
يحاول {
تنبيه (حذف a1)؛
}catch(e){alert('لا يمكن حذف a1')}
يحاول{
تنبيه (حذف a2)؛
}catch(e){alert('لا يمكن حذف a2')}
يحاول{
تنبيه (حذف a3)؛
}catch(e){alert('لا يمكن حذف a3')}
النتائج هي كما يلي
كما ترون،
1. حذف a2 خطأ في جميع المتصفحات. أي أنه لا يمكن حذف المتغيرات المعلنة من خلال var، وجميع المتصفحات تتصرف بنفس الطريقة. وهذا مذكور أيضًا في كتاب وحيد القرن.
2. لا يمكن حذف المتغيرات العامة المعلنة من خلال window.a3 في IE6/7/8، ولكن يمكن حذفها في IE9/Firefox/Chrome/Safari/Opera.
على الرغم من وجود اختلافات في النقطتين المذكورتين أعلاه، إلا أنه عند الاستخدام أثناء التشغيل، يعود كلاهما صحيحًا.
تنبيه ('a1' في النافذة)؛//صحيح
تنبيه ("a2" في النافذة)؛ // صحيح
تنبيه ("a3" في النافذة)؛ // صحيح
عند استخدام with لفتح نافذة إغلاق الكائن، تتصرف جميع المتصفحات بنفس الطريقة، على النحو التالي
مع (نافذة){
إذا (أ1) {
تنبيه (a1)؛ //11
}
إذا (أ2) {
تنبيه (a2)؛//22
}
إذا (أ3) {
تنبيه (a3)؛//33
}
}