Показать сообщение отдельно
  #1 (permalink)  
Старый 15.04.2022, 11:18
Аспирант
Отправить личное сообщение для Tipylja Посмотреть профиль Найти все сообщения от Tipylja
 
Регистрация: 17.04.2017
Сообщений: 72

Проверка существует ли переменная
Всем привет. У меня есть логика, которое должна отрабатывать на определенных страницах — например если есть переменная mse2Config то будет выполнятся скрипт, что бы не было ошибок на странице, где этой переменной нет, я заворачиваю логику в условие, например так:
$(document).ready(function () {
  if (mse2Config) {
    
    const limit = mse2Config.limit;
    if (limit) {
      const $select = $("#mse2_limit");

      $select
        .find(
          `option[value='${limit}']`
        )
        .attr("selected", "selected");
    }
  }
});


Сама логика не важна, дело в проверке — на странице, где есть mse2Config - все работает как нужно
Но, на страницах где mse2Config нет я получаю ошибку
jquery.js:4059 Uncaught ReferenceError: mse2Config is not defined
    at HTMLDocument.eval (limit.js:6:3)
    at mightThrow (jquery.js:3766:29)
    at process (jquery.js:3834:12)


Которая ссылается как раз на мое условие проверки
То есть я хочу как раз таки избавится от ошибок проверяя существует ли переменная, но как раз на эту проверку я и получил ошибку и это очень странно, ведь я так всегда делал, я совсем не могу понять почему так происходит.
Ответить с цитированием