Переменные и типы данных

1. Переменные

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

1.1. Имена переменных

Идентификатор — это имя переменной, функции, параметра или класса. Состоит из одного или нескольких символов в следующем формате:

  • Первым символом должна быть буква a-z или A-Z, символ подчеркивания _ или знак доллара $.

  • Другие символы могут быть буквами a-z, A-Z, цифрами 0-9, подчеркиваниями _ и знаками доллара $.

  • Все идентификаторы чувствительны к регистру. Это значит, что переменные user, usEr и User различны.

Имя переменной должно быть понятным.

❌ Плохо
chislo korzina_tovarov profil_polzovatelya tekushiy_mesyaz

✅ Хорошо
number cart userProfile currentMonth

Использование camelCase-нотации для идентификаторов это стандарт. При таком подходе, первое слово пишется строчными буквами, а каждое дополнительное начинается с прописной буквы. К примеру: user, greetUser, getUserData, isActive, activeGuestCount, totalWorkerSalary.

1.2. Ключевые слова

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

Таблица зарезервированных слов

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

В современном JavaScript есть 2 ключевых слова для объявления переменных.

  • let — объявляет переменную, которой можно присвоить новое значение после объявления, то есть переопределить.

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

1.4. Когда использовать const и let

Единственное отличие const и let состоит в том, что const запрещает повторное присваивание переменной какого-либо значения. Объявление const делает код более читаемым, так как переменная всегда ссылается на одно и то же значение. В случае с let такой уверенности нет.

Будет разумно использовать let и const так:

  • Используйте const по умолчанию, большинство переменных будут объявлены именно так.

  • Используйте let, если потребуется присвоить переменной другое значение во время выполнения скрипта.

1.5. константы и КОНСТАНТЫ

Имена КОНСТАНТ - переменных, значение которых не изменяется никогда на протяжении работы всего скрипта, обычно записываются в формате UPPER_SNAKE_CASE.

Абсолютное большинство переменных – константы в другом смысле, они просто не изменяют значение после присвоения. Но при разных запусках скрипта, это значение может быть разным. Имена таких переменных записывают используя формат camelCase.

1.6. Обращение к переменной

Важно различать неопределенные и необъявленные переменные.

  • Неопределенная (undefined) — это переменная, которая была объявлена, но не инициализирована значением, по умолчанию ей присваивается значение undefined как начальное.

  • Необъявленная (undeclared или not defined) — это переменная, которая не была объявлена в доступной области видимости.

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

2. Типы примитивов

JavaScript это динамический, слабо типизированный язык, поэтому переменная не ассоциируется с каким-либо типом данных, тип есть у значения переменной. То есть переменная может хранить значения разных типов.

2.1. Number

Целые числа и числа с плавающей запятой. После объявления переменной, можно инициализировать ее числовым значением.

2.2. String

Строки - это просто текст, последовательность из нуля или более символов. Строка начинается и заканчивается одиночной ' или двойными кавычками ". Открывающая и закрывающая кавычки должны быть одинаковые.

2.3. Boolean

Логический тип данных, флаги состояния. Имеет только два значения: true и false, в нижнем регистре. Например на вопрос включен ли свет в комнате можно ответить да (true) или нет (false).

  • true — да, верно, истина, 1

  • false — нет, неверно, ложь, 0

Обратите внимание на имена переменных содержащих буль. Они задают вопрос, и ответ на его — да или нет.

2.4. null

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

2.5. undefined

Еще одно специальное значение. По умолчанию, когда переменная объявляется, но не инициализируется, ее значение не определено, ей присваивается undefined.

2.6. Оператор typeof

Для получения типа значения переменной, используется оператор typeof, который возвращает на место своего вызова тип значения переменной указанного после него. Возвращаемое значение это просто строка в которой указан тип.

Last updated