Виталий Котов
Переменные и константы в JavaScript - чем отличаются var, let и const в JS
В JavaScript переменная - это именованный контейнер для хранения данных. Например,
let num = 5;
Где num
- это переменная. В ней хранится значение 5.
Объявление переменных
В JavaScript для объявления переменных мы используем ключевое слово var
или let
. Например,
var x;
let y;
Где x
и y
- переменные.
Объявление переменных через var или let
И var
, и let
используются для объявления переменных. Однако между ними есть некоторые различия.
var | let |
---|---|
var - используется в старых версиях JavaScript | let - это новый способ объявления переменных, начиная с 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
Значение переменной может меняться. Отсюда и название - переменная.
Правила именования переменных
Правила именования переменных следующие:
Имена переменных должны начинаться либо с буквы, либо с подчёркивания
_
, либо со знака доллара$
. Например,// правильно let a = "Привет"; let _a = "Привет"; let $a = "Привет";
Имена переменных не могут начинаться с цифр. Например,
// неправильно Let 1a = 'Привет'; // это приводит к ошибке
Имена переменных чувствительны к регистру. Поэтому
y
иY
- это разные переменные. Например,
let y = "Привет"; let Y = 5; console.log(y); // Привет console.log(Y); // 5
Ключевые слова, зарезервированные языком, не могут быть использованы в качестве имён переменных.
// неправильно 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