#3 ES6 - const

poster
В этом уроке мы разберем, что такое const в es6 и чем он лучше var.
Понравилось? Поделитесь с друзьями!
Понравилось?
Поделитесь с друзьями!
Комментарии
Текст видео

В этом уроке мы разберем const и зачем он нам нужен. В ес5 у нас был только var. Если мы хотели сказать, что мы описываем константу мы обычно писали

var API_URL = 'http://google.com';

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

var API_URL = 'http://google.com';
API_URL = 'http://youtube.com';

и никакой ошибки это не выкидывало.

В es6 ввели реализацию констант. Теперь мы можем их обьявить записью

const API_URL = 'http://google.com';

и если мы попробуем переопределить константу, описанную ранее, то получим ошибку, что переменная доступна только для чтения.

const API_URL = 'http://google.com';
API_URL = 'http://youtube.com';

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

if (true) {
  const API_URL = 'http://google.com';
}
console.log(API_URL);

Мы получим ошибку, что API_URL не определен.

Если же в константу присвоить обьект, то он будет защищен от переопределения, а его свойста нет

const URLS = {
  google: 'http://google.com'
}
URLS.google = 'http://youtube.com'

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

Обычно есть два вида код стайла.

Первый вариант: люди пишут в всем приложении let для переменных, а для настоящих констант используют const. Например

const API_URL = 'http://google.com';
const ORANGE = '#ffa500';
const PORT = '3000';

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

Я предпочитаю второй вариант, так как он лучше проверяется транспилятором и меньше вероятность что-то переопределить.

В этом уроке мы разобрали что такое const в es6 и чем он лучше var.

Если у вас возникли какие-то вопросы или комментарии, пишите их прямо под этим видео.

Только зарегистрированные пользователи могут оставлять комментарии.  Войдите, пожалуйста.