Объявление переменной:
Объявление переменной с присваиванием ей значения:
Объявление константы (обязательно с присваиванием значения сразу)
Код
const leftBorderWidth = 1
Имя переменной может состоять из букв, цифр, символов
$ и нижнего подчёркивания (_). Имя переменной не должно начинаться с цифры.
Примеры не корректных названий переменных:
Код
let 5number;
let *number;
Примеры корректных названий переменных:
Код
let _number;
let $number;
Названия переменных не должны повторять зарезервированные слова языка (например,
error, prompt, alert и прочие)
Название переменной, состоящее из нескольких слов, пишется в формате
camelCase Названия переменных регистрозависимы, это разные переменные:
Код
let number = 2;
let NUmber = 2;
Есть две переменных:
Код
let number = 3;
const leftBorder = 15;
Меняем значение первой переменной:
Код
number = 10;
console.log(number); // 10
Значение константы
leftBorder подобным образом поменять нельзя, получим ошибку.
Однако, значение свойства объекта, являющегося значением константы, поменять можно:
Код
const obj = {
a: 5
}
obj.a = 10;
console.log(obj); // { a: 10 }
Отсюда вывод: прямых констант в JavaScript нет.
Объявление переменной устаревшим способом:
Мы также можем заменить её значение:
Код
name = 'Alex';
console.log(name); // Alex
Проблема
var в том, что она существует ещё до того, как она была объявлена в коде и видна везде.
Код
console.log(name); // undefined
name = 'Alex';
Мы видим неправильное поведение: ошибки нет, хотя мы пытаемся использовать переменную до того, как она была объявлена.
Такое поведение называется
всплытие переменных, или
хоистинг.
Переменные, объявленные через
let и
const ограничены блоками, заключёнными в фигурные скобки, снаружи этих блоков к ним доступа нет, они не видны снаружи. Переменные, объявленные через
var, видны везде.
Код
{
let result = 50;
}
console.log(result); // result is not defined
Если в этом коде заменить
let на
var, то никакой ошибки уже не будет.
Директива "use strict"
Размещается в начала кода или в начале кода в блоке функции
Строгий режим позволяет исправлять некоторые неточности, которые были ранее в языке.
Например, использование переменной без её объявления, по логике ошибочно, но в простом режиме не даёт ошибки:
Код
a = 15;
console.log(a); // 15
В строгом режиме данный код уже вызовет ошибку и это правильное поведение, ведь мы используем переменную, которой, по-сути еще нет.
Всего комментариев: 0