Розглянемо основні відмінності між трьома способами оголошення змінних у JavaScript:
const, var та let. Це питання часто задають на співбесідах для розробників. 👇1️⃣ Визначення значення
const: обов'язково потрібно присвоїти значення під час оголошення.javascript
const greeting = 'Hello!';
// const greeting; // SyntaxError
let і var: значення можна присвоїти пізніше.javascript
let greeting;
greeting = 'Hi!';
2️⃣ Можливість перевизначення
const: значення змінювати заборонено.javascript
const greeting = 'Hello!';
greeting = 'Hi!'; // TypeError
let і var: значення змінювати дозволено.javascript
let greeting = 'Hello!';
greeting = 'Hi!'; // працює
3️⃣ Повторне оголошення
const і let: заборонено оголошувати змінну повторно.javascript
let name = 'Alice';
let name = 'Bob'; // SyntaxError
var: дозволено оголошувати змінну стільки разів, скільки потрібно.javascript
var name = 'Alice';
var name = 'Bob'; // працює
4️⃣ Область видимості
const і let: мають блокову область видимості.javascript
{
let count = 10;
const price = 20;
}
console.log(count); // ReferenceError
var: ігнорує блоки. Змінна буде доступна поза блоком.
javascript
{
var count = 10;
}
console.log(count); // 10
5️⃣ Hoisting (підняття оголошення)
const і let: підняття непідтримується.javascript
console.log(num); // ReferenceError
let num = 5;
var: підтримує підняття оголошення, але значення залишається undefined.javascript
console.log(num); // undefined
var num = 5;
▪️Використовуйте
const для змінних, які не змінюються.▪️Використовуйте
let для змінних, значення яких може змінюватися.▪️Уникайте
var, оскільки він менш передбачуваний через особливості роботи з областю видимості та hoisting.#поради_itcat
