بالا بردن متغیر در JavaScript – جامعه dev

بالابر متغیر یک مکانیسم جاوا اسکریپت است که در آن متغیرها و اعلامیه های عملکردی در مرحله کامپایل به بالای دامنه حاوی آنها منتقل می شوند. این بدان معنی است که شما می توانید قبل از اعلام آنها در کد خود از متغیرها و توابع استفاده کنید.
نکات کلیدی:
اعلامیه ها بلند می شوند ، نه اولیه سازی:
فقط اعلامیه متغیر به بالا بلند می شود ، نه اولیه سازی. اگر سعی کنید قبل از اولیه سازی از یک متغیر استفاده کنید ، تعریف نشده است.
اعلامیه های عملکرد کاملاً بلند شده اند:
بر خلاف متغیرها ، اعلامیه های عملکرد به همراه تعاریف آنها بلند می شوند. این بدان معنی است که می توانید قبل از اعلام آن در کد خود ، با یک تابع تماس بگیرید.
مثالها:
بالابر متغیر:
console.log(x); // Output: undefined
var x = 5;
console.log(x); // Output: 5
در این مثال ، اعلامیه var x به بالا بلند می شود ، اما اولیه سازی x = 5 نیست. از این رو ، اولین Console.Log (x) خروجی های تعریف نشده.
عملکرد بالابر:
`سلام () ؛ // خروجی: سلام ، جهان!
عملکرد سلام () {
console.log (“سلام ، جهان!”) ؛
} `
در اینجا ، عملکرد سلام به همراه تعریف آن بلند می شود ، بنابراین می توان آن را قبل از اعلامیه آن فراخوانی کرد.
اجازه دهید و ثابت:
متغیرهای اعلام شده با let و const نیز بلند می شوند اما اولیه نمی شوند. آنها از ابتدای بلوک در یک “منطقه مرده زمانی” قرار دارند تا اینکه اعلامیه مواجه شود.
console.log(y); // ReferenceError: Cannot access 'y' before initialization
let y = 10;
console.log(y); // Output: 10