Существует ли переменная javascript

1 4m1r [2013-11-19 02:15:00]

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

Идея заключается в том, что сайт не существует в моем экземпляре dev, но он должен использоваться динамически в prod. Поэтому в dev объект сайта всегда не определен. Хорошо работает, и браузер не жалуется, но jshint сообщит мне, что сайт не определен. Есть лучший способ сделать это? Я знаю, что это немного субъективно, но мне интересно видеть ответы.

3 ответа

3 Решение RichieHindle [2013-11-19 02:20:00]

Вы можете сделать это следующим образом:

но это немного уродливо.

Как насчет определения глобального в самом начале, что означает "Я – экземпляр Dev", а затем переопределяя его в экземпляре Prod со значением, означающим "Я – экземпляр Prod"? По крайней мере, таким образом переменная всегда существует.

Мое предложение было бы что-то вроде этого.

В принципе, мы всегда пытаемся установить identifier для URL-адреса, но по умолчанию будет использоваться второе значение, если оно не существует.

0 svidgen [2013-11-19 02:33:00]

Если вы ищете один лайнер, и если Site никогда не определяется без settings.* , Вы можете сделать это:

Хотя, может быть, имеет Site.settings.url.accountsUrl всегда определять Site.settings.url.accountsUrl . Создайте файл конфигурации по умолчанию. Включите этот файл в верхней части страницы. И включать переопределения непосредственно после.

JavaScript также поддерживает тернарный оператор, если вы чувствуете, что это безопаснее и красивее:

Пробовал делать так:

Т-е на странице нигде не объявлена переменная par

Читайте также:  Потек фреон в холодильнике что делать

3 ответа 3

Получаешь тип и сравниваешь его с undefined . Если true , то переменная установлена.

Удобней использовать функцию, так как часто требуется такова рода проверка.

Или более продвинутый вариант

Ну и для сверх ленивых и знающих что будет в переменной:

Всё ещё ищете ответ? Посмотрите другие вопросы с метками javascript или задайте свой вопрос.

Связанные

Похожие

Для подписки на ленту скопируйте и вставьте эту ссылку в вашу программу для чтения RSS.

дизайн сайта / логотип © 2019 Stack Exchange Inc; пользовательское содержимое попадает под действие лицензии cc by-sa 4.0 с указанием ссылки на источник. rev 2019.12.20.35703

Я люблю экспериментировать с языками программирования. Недавно у меня появилась задача, часто проверять переменную JS на undefined, но при этом ещё проверить истина ли она. Стандартный код такой:

Я расскажу Вам как можно это написать в 2-3 символа. Интересно? Тогда под кат.

Вот пример посложнее, надо проверить переменную на лож или истину. Значит:

А теперь, что недавно обнаружил я, причём искал в интернете и не нашел ни в одной книге.

То-есть, "!!" — является проверкой как определена ли переменная и является истиной, а ". " — как определена переменная и является ложью.
При этом если переменная является Undefined, то всегда вернется false.

Счастливых Вам экспериментов!

Данная статья не подлежит комментированию, поскольку её автор ещё не является полноправным участником сообщества. Вы сможете связаться с автором только после того, как он получит приглашение от кого-либо из участников сообщества. До этого момента его username будет скрыт псевдонимом.

  • 10 ноября 2019 в 19:10 Интересные факты о Java
  • 15 ноября 2019 в 11:44 Почему стоит научиться > сайты, или как написать свой первый парсер на Python
  • 25 ноября 2019 в 15:24 Быстрее ли JavaScript, чем Python?
  • 18 декабря 2019 в 15:21 Устройство движка JavaScript
  • 19 декабря 2019 в 23:39 Особенности интеллектуального права в разных юрисдикциях и коллизия в работе нового омбудсмена
Читайте также:  Изменить mac адрес mikrotik

Ой, у вас баннер убежал!

Это «Песочница» — раздел, в который попадают дебютные посты пользователей, желающих стать полноправными участниками сообщества.

Если у вас есть приглашение, отправьте его автору понравившейся публикации — тогда её смогут прочитать и обсудить все остальные пользователи Хабра.

Чтобы исключить предвзятость при оценке, все публикации анонимны, псевдонимы показываются случайным образом.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *