Страницы

Поиск по вопросам

понедельник, 22 октября 2018 г.

Как ограничить область видимости переменных в jQuery?

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


Ответ

В стандарте ECMAScript 5 такой возможности нет. Переменные, объявленные через var, ограничены только телом функции, в которой они объявлены.
В стандарте ECMAScript 6 стало возможным объявлять переменные через let и const. Такие переменные видны только внутри контейнера {}, причем только после своего объявления.

Комментариев нет:

Отправить комментарий