تعد سلسلة نطاق JavaScript ونطاق نطاقها الجزء الأكثر إيلامًا من تعليمي ، لأنني قضيت الكثير من الوقت في قراءة العديد من المستندات التقنية ولكن لم أستطع فهمها. كنت أعرف ما يعنيه تقريبًا ، لكنني ما زلت لا أستطيع معرفة السبب.
من خلال اختباري الواسع وقراءة المستندات التقنية ، قمت بتلخيص الفهم التالي. على الرغم من أنها ليست تقنية للغاية ، إلا أنني أستطيع أن أفهمها حقًا.
1. ينقسم JavaScript فقط إلى عالمي ومحلي ، ولا توجد معدلات مختلفة لهذه اللغات الخلفية. إذا لم تستخدم VAR في وظيفة ، فهي عالمية. على النحو التالي:
<script type = "text/javaScript"> varname = "c#" ؛ // global window.name = "java" ؛ // global varlanguage = function () {Alert (name) ؛ name = "javaScript" ؛ // Global var name = "js" ؛ // local alert (name) ؛ } () ALERT (name) ؛ </script>يمثل الرمز أعلاه كل ما يشير إلى نفس المتغير ، وسيحل التعريف التالي محل ما ورد أعلاه. فيما يتعلق بالتنبيهات الثلاثة ، وهي Underfind و JS و JavaScript. هذا هو النطاق الذي يلعب دورًا.
2. تبدأ سلسلة النطاق من المستوى 0 ويتم ترتيبها لأسفل بالتسلسل. يشير ما يسمى بأسفل بالتسلسل إلى ترتيب الأطفال. عند البحث عن المتغيرات ، ابحث عنها أولاً من نفس المستوى ثم ابحث عن المستوى الأصل.
في المثال أعلاه ،
أول ما يظهر هو أول تنبيه في طريقة اللغة. إذا كانت النافذة العالمية 0 ، فحينئذٍ في مثال var name = "JS" هو 1. تم العثور على التنبيه الأول في 1. إذا لم يكن من الممكن العثور عليه ، فابحث عنه في 0. هذا هو ما وجد أن هناك اسم var = "JS"
المنبثقة الثانية هو التنبيه الثاني في طريقة اللغة ، وسيبحث عنه في 1 ، أي داخل الطريقة. وجد الاسم وتعيين JS ، وبالتالي فإن المنبثقة هي JS
المنبثقة الثالثة هو التنبيه في الأسفل. منذ أن تم إعادة تعيين الاسم العالمي داخل الطريقة ، ظهر JavaScript.
ثم أضف الرابط التالي ، نتصدر طريقة في اللغة ، على النحو التالي:
<scriptType = "text/javaScript"> varname = "javaScript" ؛ // global window.name = "javaScript" ؛ // global varlanguage = function () {alert (name) ؛ name = "javaScript" ؛ // Global varname = "JS" ؛ // local alert (name) ؛ var lovelanguage = function () {Alert (name) ؛ } () ؛ } () تنبيه (اسم) ؛ </script>في هذا الوقت ، ظهر التنبيه في Lovelanguage مع JS لأنه سيجد الاسم في مستوى اللغة ، وهو الاسم في اللغة. . .
ما ورد أعلاه هو كل محتوى نطاق JavaScript وسلسلة النطاق (يجب القراءة للمبتدئين) الذي قدمه لك المحرر. آمل أن يدعم الجميع خطى المنزل أكثر.