دامنه JavaScript
یادگیری JavaScriptدامنه تعیین کننده دسترسی (دید) متغیرها است.
دامنه تابع JavaScript
در جاوا اسکریپت دو نوع دامنه وجود دارد:
- دامنه محلی
- دامنه جهانی
جاوا اسکریپت دارای دامنه تابع: برای هر تابع یک دامنه جدید ایجاد می کند.
دامنه تعیین کننده دسترسی (دید) این متغیرها است.
متغیرهایی که در داخل یک تابع تعریف شده اند از خارج از عملکرد قابل دسترسی نیستند (قابل مشاهده).
متغیرهای محلی JavaScript
متغیرهایی که در یک تابع جاوا اسکریپت اعلام شده است، به تابع LOCAL تبدیل می شوند.
متغیرهای محلی محدوده محلی دارند: آنها تنها درون تابع قابل دسترسی هستند.
// code here can not use carName
function myFunction() {
var carName = "Volvo";
// code here can use carName
}
مشاهده مثالاز آنجایی که متغیرهای محلی فقط درون توابع آنها شناخته می شوند، متغیرهایی با همان نام در عملکردهای مختلف مورد استفاده قرار می گیرند.
متغیرهای محلی زمانی ایجاد می شوند که یک تابع شروع می شود و هنگامی که تابع تکمیل می شود حذف می شود.
متغییر های سراسری JavaScript
یک متغیر که خارج از یک تابع اعلام شده است، GLOBAL می شود.
یک متغیر سراسری دامنه سراسری دارد: تمام اسکریپت ها و توابع در یک صفحه وب به آن دسترسی دارند.
var carName = " Volvo";
// code here can use carName
function myFunction() {
// code here can use carName
}
مشاهده مثالمتغییر های JavaScript
در جاوا اسکریپت، اشیاء و توابع نیز متغیر هستند.
مقیاس دسترسی به متغیرها، اشیاء و توابع از قسمت های مختلف کد را تعیین می کند.
متغییر سراسری خودکار
اگر مقدار را به یک متغیر که اعلام نشده است اختصاص دهید، به طور خودکار یک متغیر GLOBAL خواهد شد.
این مثال کد یک نام متغیر سراسری را اعلام می کند، حتی اگر مقدار در داخل یک تابع قرار داده شود.
myFunction();
// code here can use carName
function myFunction() {
carName = "Volvo";
}
مشاهده مثالحالت سخت (Strict Mode)
تمام مرورگرهای مدرن از "جاوا اسکریپت" در "حالت سخت" پشتیبانی می کنند.
شما در مورد نحوه استفاده از حالت سخت در فصل بعد این آموزش بیشتر می آموزید.
متغیرهای سراسری به طور خودکار در "حالت سخت" ایجاد نمی شوند.
متغییر سراسری در HTML
محدوده سراسری محیط کامل جاوا اسکریپت است.
در HTML، دامنه جهانی، شیء window است.تمام متغیرهای سراسری به شیء window تعلق دارند.
var carName = "Volvo";
// code here can use window.carName
مشاهده مثالهشدار
متغیرهای جهانی را ایجاد نکنید مگر اینکه مجبور باشید.
متغیرهای جهانی (یا توابع) می توانند متغیرهای window (یا توابع) را بازنویسی کنند.
هر تابع، از جمله شیء window ، می تواند متغیرها و توابع جهانی خود را بازنویسی کند.
طول عمر متغیرهای جاوا اسکریپت
طول عمر یک متغیر جاوا اسکریپت زمانی شروع می شود که اعلام شود.
متغیرهای محلی هنگام تکمیل عملکرد حذف می شوند.
در مرورگر وب، متغیرهای سراسری هنگام بستن پنجره مرورگر (یا برگه) حذف می شوند، اما برای صفحات جدید بارگذاری شده در همان پنجره همچنان در دسترس می باشند.
پارامترهای تابع
آرگومان های تابع (پارامترها) به عنوان متغیرهای محلی درون توابع عمل می کنند.
نظر شما
>