Підняття змінних (Hoisting)

JavaScript - унікальні особливості змінних (частина 1)!!!!

Під час написання коду на JavaScript часто виникають неочікувані помилки, пов’язані з використанням змінних. Ці помилки зазвичай пов’язані з Hoisting та Temporal Dead Zone (TDZ). У цьому пості я коротко розгляну саме процес hoisting.

Що таке Hoisting?

Hoisting — це процес автоматичного підняття змінних та функцій в JavaScript. Зазвичай, код на JavaScript читається зверху вниз. Уявіть, що ви створили нову змінну на 10-му рядку і викликаєте її на 8-му. У такому випадку у консолі JavaScript ви побачите результат undefined. Чому? Тому що в процесі Hoisting піднімається лише назва змінної, але її значення не піднімається.

Чому undefined?

В процесі hoisting JavaScript піднімає лише ім’я змінної, а не її значення. Якщо змінна не оголошена, JavaScript призначає їй значення undefined. Тому, наприклад, коли ви використовуєте змінну, оголошену через let b;, при її виклику результат буде undefined.

приклад коду : ))

console.log(a); // undefined  
var a = 5;  
console.log(a); // 5

Тут змінна a на першому виклику console.log повертає значення undefined, оскільки її значення ще не присвоєно. Але на другому виклику console.log значення вже присвоєно, тому результатом буде 5.

dilshoddev #hoisting #javascript #dilshodabdullayev

Перекладено з: Hoisting.

Leave a Reply

Your email address will not be published. Required fields are marked *