логотип PurpleSchool
Иконка входа
Вход
  • Обучение
  • Войти
логотип PurpleSchool

Переменные и константы в JavaScript - чем отличаются var, let и const в JS

Автор

Виталий Котов

В JavaScript переменная - это именованный контейнер для хранения данных. Например,

let num = 5;

Где num - это переменная. В ней хранится значение 5.

Объявление переменных

В JavaScript для объявления переменных мы используем ключевое слово var или let. Например,

var x;
let y;

Где x и y - переменные.

Объявление переменных через var или let

И var, и let используются для объявления переменных. Однако между ними есть некоторые различия.

varlet
var - используется в старых версиях JavaScriptlet - это новый способ объявления переменных, начиная с ES6 (ES2015)
var - имеет функциональную область видимостиlet - имеет блочную область видимости
Например, var x;Например, let y;

Примечание: рекомендуется использовать let вместо var. Однако есть несколько браузеров, которые не поддерживают let.

Присвоение значений переменным

Для присвоения значения переменной мы используем оператор присваивания =.

let x;
x = 5;

Где переменной x присвоено значение 5.

Мы также можем присвоить значения переменным во время их объявления.

let x = 5;
let y = 6;

Если использовать переменную без её объявления, она будет иметь значение undefined.

let x; // x - имя переменной

console.log(x); // undefined

Где x - имя переменной, и поскольку она не содержит никакого значения, она будет неопределена.

Изменение значений переменных

Можно изменить значение, хранящееся в переменной. Например,

// 5 присваивается переменной x
let x = 5;
console.log(x); // 5

// значение переменной x изменяется
x = 3;
console.log(x); // 3

Значение переменной может меняться. Отсюда и название - переменная.

Правила именования переменных

Правила именования переменных следующие:

  1. Имена переменных должны начинаться либо с буквы, либо с подчёркивания _, либо со знака доллара $. Например,

    // правильно
    let a = "Привет";
    let _a = "Привет";
    let $a = "Привет";
  2. Имена переменных не могут начинаться с цифр. Например,

    // неправильно
    Let 1a = 'Привет'; // это приводит к ошибке
  3. Имена переменных чувствительны к регистру. Поэтому y и Y

    • это разные переменные. Например,

    let y = "Привет";
    let Y = 5;
    
    console.log(y); // Привет
    console.log(Y); // 5
  4. Ключевые слова, зарезервированные языком, не могут быть использованы в качестве имён переменных.

    // неправильно
    let new = 5; // Ошибка! new - это ключевое слово.

Примечания:

  • Хотя можно называть переменные как угодно, хорошей практикой будет давать переменным описательное имя. Если используем переменную для хранения количества яблок, лучше использовать apples или numberOfApples, а не x или n.

Константы

Ключевое слово const также было введено в версии ES6(ES2015) для создания констант. Например,

const x = 5;

После присвоения константы мы не можем изменить её значение.

const x = 5;
x = 10; // Ошибка! Константа не может быть изменена.
console.log(x);

Проще говоря, константа - это тип переменной, значение которой не может быть изменено.

Кроме того, нельзя объявить константу без присвоения её значения. Например,

const x;  // // Ошибка! Отсутствует присвоение в объявлении const.
x = 5;
console.log(x)

Примечание: если есть уверенность, что значение переменной не изменится в течение всей программы, рекомендуется использовать const. Однако есть несколько браузеров, которые не поддерживают const.

Карта развития разработчика

Получите полную карту развития разработчика по всем направлениям: frontend, backend, devops, mobile