Переменные и константы в JavaScript

Определение переменной

Переменная - сущность, которая может хранить изменяемое значение различных типов данных (логических, числовых, строковых). Для лучшего понимая переменную можно представить как коробку, а значение тем, что лежит в этой коробке.

Для того чтобы определить переменную, нужно обозначить факт ее объявления с помощью ключевого слова  - var, за которым следуем имя переменной, оператор присваивания - = и присваиваемое значение.

Определение переменной

Переменные можно также объявить сразу несколько, разделяя имена запятыми.

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

Значение переменной может быть изменено. Процесс присвоения переменной нового значения называется - переопределением.

В качестве значений переменных могут выступать числа, строки, массивы, объекты, функции, другие переменные, арифметические операции и многое другое.

Особенности именования переменных

Имя переменной может состоять из английских букв, цифр, знаков подчеркивания и знаков доллара. Имя переменной часто называют идентификатором.

Имя переменной не может начинаться с цифры!

Имена переменных чувствительны к регистру, это значит, что следующий имена myVariable, MyVariable, myvariable являются разными!

Имена переменных не должны совпадать с названием ключевых слов (var, function, this, ...)!

Определение константы

Константа похожа на переменную, но главным ее отличием будет то, что на протяжении всей работы программы, значение константе присваивается лишь один раз и больше не меняется. 

В качестве значений константы выступают значения, которые всегда постоянны, например: число "пи" - 3,14 или процент налоговой ставки для расчетной программы.

Чаще всего, для удобства, константы инициализируются в самом начале кода программы. Имена для констант, по общему соглашению разработчиков, пишутся в верхнем регистре с разделителем - _ (нижнее подчеркивание) между словами. 

До момента принятия стандарта ECMAScript 6, в JavaScript не существовало специальной директивы для определения константы, однако ее для имитации использовали ключевое слово var, а имя записывали в верхнем регистре, это помогало другим разработчикам понять, что в данном случае они имеют дело с константой, а не переменной, когда с технической точки зрения переменная так и оставалась переменной.

Пример определения константы для стандарта ECMAScript 5 и ниже.

В стандарте ECMAScript 6 появилась директива const, с помощью которой можно объявить самую настоящую константу. 

При попытке изменения значения константы объявленной через const, программа выдаст ошибку вида TypeError, а в случае использования "strict mode" (режим строгого синтаксиса), вы получите ошибку синтаксиса SyntaxError.

Пример получения ошибки в режиме строгого синтаксиса.

Правила именования идентификаторов для констант подчиняются тем же правилам, что и переменные.