٪۴۰ تخفیف تابستانه شروع شد! بزرگترین حراج سال ما

به ما بپیوندید

آموزش اجازه جاوا اسکریپت

letکلمه کلیدی را در معرفی شد ES6 (2015) . متغیرهای تعریف شده letرا نمی توان مجدداً اعلام کرد. متغیرهای تعریف شده با آنها letباید قبل از استفاده اعلام شوند. متغیرهای تعریف شده با letBlock Scope هستند. نمی توان مجدداً اعلام کرد متغیرهای تعریف شده letرا نمی…

محمد یوسفی

17 جولای 2021

letکلمه کلیدی را در معرفی شد ES6 (2015) .

متغیرهای تعریف شده letرا نمی توان مجدداً اعلام کرد.

متغیرهای تعریف شده با آنها letباید قبل از استفاده اعلام شوند.

متغیرهای تعریف شده با letBlock Scope هستند.

نمی توان مجدداً اعلام کرد

متغیرهای تعریف شده letرا نمی توان دوباره اعلام کرد .

به طور تصادفی نمی توانید یک متغیر را دوباره اعلام کنید.

با letشما نمی توانید این کار را انجام دهید:

مثال

let x = "John Doe";

let x = 0;

// SyntaxError: 'x' has already been declared

با varشما می توانید:

مثال

var x = "John Doe";

var x = 0;

محدوده محدوده

قبل از ES6 (2015) ، جاوا اسکریپت فقط محدوده عملکرد جهانی و عملکرد داشت .

ES6 دو کلید واژه جدید مهم JavaScript را معرفی کرد: letو const.

این دو کلمه کلیدی Block Scope را در JavaScript ارائه می دهند .

به متغیرهای اعلام شده در داخل یک بلوک از خارج از بلوک دسترسی نمی توان:

مثال

{
  let x = 2;
}
// x can NOT be used here

متغیرهای اعلام شده با varکلمه کلیدی نمی توانند دامنه بلوک داشته باشند.

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

مثال

{
  var x = 2;
}
// x CAN be used here

تغییر مجدد متغیرها

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

اعلان مجدد یک متغیر در داخل یک بلوک همچنین باعث تغییر مجدد متغیر در خارج از بلوک می شود:

مثال

var x = 10;
// Here x is 10

{
var x = 2;
// Here x is 2
}

// Here x is 2

اعلام مجدد متغیر با استفاده از letکلمه کلیدی می تواند این مشکل را حل کند.

اعلان مجدد متغیر در داخل بلوک ، اعلام مجدد متغیر خارج از بلوک نیست:

مثال

let x = 10;
// Here x is 10

{
let x = 2;
// Here x is 2
}

// Here x is 10

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

letکلمه کلیدی به طور کامل در اینترنت اکسپلورر 11 و یا قبل از پشتیبانی نمی شود.

جدول زیر اولین نسخه های مرورگر را با پشتیبانی کامل از letکلمه کلیدی تعریف می کند:


اعلام مجدد

اعلان مجدد متغیر JavaScript با varهر کجای برنامه مجاز است:

مثال

var x = 2;
// Now x is 2

var x = 3;
// Now x is 3

با let، تعریف مجدد یک متغیر در همان بلوک مجاز نیست:

مثال

var x = 2;    // Allowed
let x = 3;    // Not allowed

{
let x = 2;    // Allowed
let x = 3     // Not allowed
}

{
let x = 2;    // Allowed
var x = 3     // Not allowed
}

اعلان مجدد متغیر با letیک بلوک دیگر ، IS مجاز است:

مثال

let x = 2;    // Allowed

{
let x = 3;    // Allowed
}

{
let x = 4;    // Allowed
}

بگذارید بلند شود

متغیرهایی که با varآنها تعریف می شوند به بالا برداشته می شوند و در هر زمان می توانند مقداردهی اولیه شوند.

معنی: شما می توانید از متغیر قبل از اعلام استفاده کنید:

مثال

این خوب است:

carName = "Volvo";
var carName;

متغیرهایی که با letآنها تعریف می شوند نیز در بالای بلوک بلند می شوند ، اما مقداردهی اولیه نمی شوند.

معنی: استفاده از یک letمتغیر قبل از اعلام منجر به یک ReferenceError:

مثال

carName = "Saab";
let carName = "Volvo";

منبع

مطالب مرتبط

0 0 رای ها
امتیازدهی به مقاله
اشتراک در
اطلاع از
guest
0 نظرات
بازخورد (Feedback) های اینلاین
مشاهده همه دیدگاه ها