JavaScript – کلمه کلیدی Let (Let)

تعریف let

کلیدواژه let در ES6 (2015) معرفی شد و دارای ویژگی‌های خاصی است که آن را از var متمایز می‌کند. در اینجا به بررسی ویژگی‌ها و نحوه استفاده از let می‌پردازیم.

ویژگی‌های let

دارای محدوده بلوکی (Block Scope): متغیرهای تعریف‌شده با let فقط در بلوکی که تعریف شده‌اند (داخل { }) قابل دسترسی هستند. این به معنای عدم دسترسی به متغیر خارج از این بلوک است.

{
  let x = 2;
}
// x قابل دسترسی در اینجا نیست

عدم امکان بازتعریف متغیر در یک محدوده یکسان: متغیرهایی که با let تعریف می‌شوند نمی‌توانند در همان محدوده مجدداً تعریف شوند. این باعث می‌شود که به‌طور تصادفی متغیرها بازتعریف نشده و کد تمیزتر و قابل اطمینان‌تری داشته باشید.

let x = "John Doe";
let x = 0; // خطا: نمی‌توان x را مجدداً تعریف کرد

پشتیبانی از محدوده بلوکی برای جلوگیری از تداخل متغیرها: بازتعریف یک متغیر let در بلوک‌های متفاوت امکان‌پذیر است، که این ویژگی به شما کمک می‌کند متغیرهای محلی بدون تداخل با متغیرهای خارج از بلوک داشته باشید.

let x = 10;

{
  let x = 2;
  // اینجا x مقدار 2 دارد
}

// در اینجا x مقدار 10 دارد

تفاوت‌های بین var، let و const

ویژگی var let const
محدوده Global یا Function Block Block
بازتعریف بله خیر خیر
تخصیص مجدد بله بله خیر
هویدا شدن بله خیر خیر
متصل به this بله خیر خیر

مزایای استفاده از let و const

  • دارای محدوده بلوکی است که از تداخل متغیرها جلوگیری می‌کند.
  • قبل از استفاده باید تعریف شوند.
  • با this اتصال ندارد و برای برنامه‌نویسی امن‌تر است.

مشکل استفاده از var

متغیرهای تعریف‌شده با var هویدا هستند و می‌توانند قبل از تعریف استفاده شوند که ممکن است منجر به خطاهای غیرمنتظره شود.

carName = "Volvo";
var carName;
// این کار می‌کند زیرا var هویدا است.

استفاده از var باعث می‌شود متغیر در سطح گسترده‌تر (Global یا Function) تعریف شود که ممکن است در پروژه‌های بزرگ به تداخل متغیرها منجر شود.

پشتیبانی مرورگرها

let و const در نسخه‌های قدیمی‌تر Internet Explorer (نسخه 11 و قبل از آن) پشتیبانی نمی‌شوند. اما در مرورگرهای جدیدتر پشتیبانی کامل دارند:

مرورگر Chrome Edge Firefox Safari Opera
نسخه پشتیبانی 49 12 36 11 36
var x = 2;   // تعریف شده با var و مجاز است.
let y = 3;   // تعریف شده با let و مجاز است.

{
  let y = 4; // مجاز است زیرا در یک بلوک جدید تعریف شده است.
}

y = 5;       // تخصیص مجدد برای y مجاز است.
const z = 6; // تعریف شده با const و مقدار اولیه ثابت است.

let و const گزینه‌های بهتری در پروژه‌های مدرن هستند و به مدیریت محدوده و جلوگیری از خطاهای ناخواسته کمک می‌کنند.

پست های مرتبط

مطالعه این پست ها رو از دست ندین!
JavaScript - تاریخ‌ها (Dates)

JavaScript – تاریخ‌ها (Dates)

آبجکت‌های تاریخ (Date) در جاوااسکریپت آبجکت‌های تاریخ در جاوااسکریپت به ما امکان کار با تاریخ و زمان را می‌دهند....

بیشتر بخوانید
JavaScript - آرایه‌های ثابت (Array Const)

JavaScript – آرایه‌های ثابت (Array Const)

جاوااسکریپت: تعریف آرایه با const در سال 2015، جاوااسکریپت کلمه کلیدی مهمی به نام const را معرفی کرد. این...

بیشتر بخوانید
JavaScript - تکرار آرایه‌ها (Array Iteration)

JavaScript – تکرار آرایه‌ها (Array Iteration)

جاوا اسکریپت: تکرار بر روی آرایه‌ها جاوا اسکریپت روش‌های مختلفی برای تکرار (Iteration) بر روی آرایه‌ها ارائه می‌دهد که...

بیشتر بخوانید

نظرات

سوالات و نظراتتون رو با ما به اشتراک بذارید

برای ارسال نظر لطفا ابتدا وارد حساب کاربری خود شوید.