У меня есть несколько кусков кода, которые используют переменные с одинаковыми именами:
var owl = $('.banner__carousel');
...
var owl = $('.contact__carousel');
Раньше, чтобы не было конфликтов, я просто оборачивал каждый такой кусок в
$(function() { ... });
Пока не узнал, что это сокращение для
$(document).on('ready', function() { ... });
Если ли какой-либо другой способ ограничить видимость переменной (кроме как оборачивать ее в другую функцию и давать ей еще одно название).
Ответ
В стандарте ECMAScript 5 такой возможности нет. Переменные, объявленные через var, ограничены только телом функции, в которой они объявлены.
В стандарте ECMAScript 6 стало возможным объявлять переменные через let и const. Такие переменные видны только внутри контейнера {}, причем только после своего объявления.
Комментариев нет:
Отправить комментарий