دامنه متغیرها (Scope) و مفهوم Closure
مفهوم دامنه متغیرها (Scope)
در برنامه نویسی، دامنه متغیرها به محدودهای اطلاق میشود که یک متغیر در آن موجود است و قابل دسترسی است. دامنه متغیرها تعیین میکند که چگونه متغیرها در برنامه شما قابل دسترسی هستند و چگونه میتوانند استفاده شوند.
انواع دامنه متغیرها
در زبانهای برنامه نویسی، دامنه متغیرها میتواند به چندین نوع تقسیم شود:
- Global Scope: متغیرهایی که در سطح بالایی از برنامه تعریف میشوند و در تمام قسمتهای برنامه قابل دسترسی هستند.
- Local Scope: متغیرهایی که در یک بلوک کد مشخص تعریف میشوند و فقط در آن بلوک قابل دسترسی هستند.
- Function Scope: متغیرهایی که درون یک تابع تعریف میشوند و فقط در آن تابع قابل دسترسی هستند.
مفهوم Closure
در برنامهنویسی، Closure به یک تابع اشاره دارد که دسترسی به متغیرهای خارجی خود را دارد، حتی پس از اینکه تابع جاری اجرا شده باشد و محیط خود را ترک کرده باشد.
استفاده از Closure
استفاده از Closure در برنامهنویسی، به شما این امکان را میدهد که اطلاعات را به صورت خصوصی در یک تابع نگه دارید و از آنها در زمانهای مختلف استفاده کنید، بدون اینکه این اطلاعات به صورت عمومی در دسترس باشند.
function createCounter() {
let count = 0;
return function() {
count++;
return count;
};
}
const counter = createCounter();
console.log(counter()); // 1
console.log(counter()); // 2
console.log(counter()); // 3
در مثال بالا، تابع createCounter یک Closure ایجاد میکند که به متغیر count دسترسی دارد و هر بار که اجرا میشود، مقدار count را افزایش میدهد و برمیگرداند.




