Średniozaawansowany
+50 XP

👋 Zacznij uczyć się JavaScript już teraz — za darmo!

📖

Zakres i domknięcia (closures)

Zrozum gdzie 'żyje' zmienna i jak domknięcia zapamiętują kontekst

🏠

Scope = зона видимості змінної

Уяви будинок з кімнатами. Змінна оголошена в кімнаті (функції) — видна тільки в ній. Змінна в коридорі (глобально) — видна скрізь. Але з кімнати можна «виглянути» в коридор, а з коридору не можна зазирнути в кімнату.

javascript
💬

Функція бачить змінні зовні, але зовні не видно що всередині функції.

let і const — блоковий scope

let і const живуть тільки всередині { } де оголошені:

javascript
if (true) {
  let blockVar = "блок";
  console.log(blockVar); // ✅ працює
}
// console.log(blockVar); // ❌ не видна поза блоком

var — старий спосіб, живе у функції (не в блоці) — саме тому зараз використовують let/const.

Замикання (closure)

Замикання — це функція, яка запам'ятовує змінні з місця де була створена:

javascript
💬

Внутрішня функція 'замкнула' в собі змінну count. Кожен виклик збільшує той самий count.

Замикання — одна з найпотужніших концепцій JavaScript. Вони використовуються для: приватних змінних, фабрик функцій, мемоізації. Не переживай якщо не відразу зрозуміло — це приходить з практикою.

Komentarze

Zaloguj się lub Zacznij aby zostawić komentarz.