Переменные в JavaScript
Лекция с Udemy про переменые в JavaScript
Переменные в JavaScript - это хранилище информации. Визуально их можно представить как коробки, которые что то содержат внутри себя.
Чтобы объявить переменную существует сразу 3 способа.
Две ключевые фразы let и const относятся к современной версии JavaScript.
Так же есть ключевое слово var с помощью которого можно объявить переменную, но он относится к устаревшей версии и использовать var не рекомендуется.
let
Первый способ - через ключевое слово let
Для того чтобы объявить переменную, прописываем ключевое слово let, после этого пишем имя переменной, дальше ставим знак присваивания "=", и пишем значение этой самой переменной.
В программировании знак равенства "=" называется знаком присваивания. Нужно помнить об этом.
let name = "Dxrkd3v";
let // Ключевое слово, для объявления переменной
name // имя переменной
= // знак присваивания
Dxrkd3v // значение переменной
; // завершение блока кода
const
Второй способ - через ключевое слово const
const - переводится как "константа" и переменная созданная с помощью const не может быть перезаписана.
const dateOfBirth = 29.06.1999;
Имя переменной может сосотоять из букв, цифр, симфола доллара "$" и нижнего подчеркивая. И первый символ имени переменной не может быть цифрой
Еще имена переменных не должны повторять зарезервированные слова в самом языке JavaScript такие как error, alert, prompt и так далее
const используется в таких переменных, значения которых в дальнейшем не меняются. Например для хранения имен, даты рождений и так далее.
У ключевого слова const есть одна особенность, его значение можно перезаписать если создать объект через const
const object {
age: 25;
}
object.age = 35; // перепишем значение age
console.log(object.age); // ответ получим 35
var
var - это устаревший формат записи переменных. Переменные записанные через var встречаются в старых скриптах.
Переменные записанные через var можно перезаписать как и через let
Проблема var в том что, переменная записанная через var существует еще до того как она была объявлена в коде и поэтому она видна везде
При обращеннии к переменной которая записана через var еще до того как до нее дойдет поток консоль выдаст undefined. Например:
console.log(name); // выдаст undefined
var name = "Dxrkd3v";
Такое поведение называется "hoisting" или всплытие переменных.
Еще одна особеность let и const в том что они видны в блоке кода ограниченного фигурными скобками
{
let result = 29;
}
console.log(result); // вернет result is not defined
Если записать через var то доступ к переменной "result" будет открыт.
Если нужно узнать какие конструкции можно использовать в разных браузерах нужно использовать сервис Can I Use
"use strict"
Дериктива указывается в начале скрипта и указывает браузеру, что дальнейший код работает в "современном" режиме".
"use strict";
// этот код работает в современном режиме
...
Без использования "use strict" можно обращаться к переменным которые были объявлены без ключевых слов и получать из них информацию. С "use strict" получаем is not defined.