Как проверить существующий объект? (hasChild, isExist?) [дублировать]

Наконец, я нашел решение для меня, объединив opacity с position absolute (не занимая пространство, когда скрыто).

.toggle {
  opacity: 0;
  position: absolute;
  transition: opacity 0.8s;
}

.parent:hover .toggle {
  opacity: 1;
  position: static;
}
3
задан yroc 10 October 2015 в 18:27
поделиться

2 ответа

Чтобы проверить, является ли эта переменная либо null, либо undefined, используйте оператор не равных равных операторов для null.

if (myVar != null) {

}

Однако всегда лучше использовать тройные равные

if (!(myVar === null || typeof myVar === 'undefined')) {

}

Сравнение

(undefined == null) => true
(null == null) => true
(undefined === null) => false
(null === null) => true
(0 == null) => false
(0 == undefined) => false
(0 === null) => false
(0 === undefined) => false
(false == null) => false
(false == undefined) => false
(false === null) => false
(false === undefined) => false
(null) => false
(undefined) => false
(0) => false
(false) => false

DEMO: http://jsfiddle.net/xk9L3yuz/3/

4
ответ дан Miguel Mota 28 August 2018 в 08:17
поделиться

Нет короткого пути. Сначала вам нужно проверить неопределенное значение до нулевого значения, потому что

!myVar

делает предположение, что myVar предварительно определен, и будет бросать

Uncaught ReferenceError: myVar is not defined

в том случае, если вы никогда не определяли эта переменная.

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

!myVar

просто потому, что знаете , это уже потому что вы сделали это раньше в коде.

0
ответ дан David Li 28 August 2018 в 08:17
поделиться
Другие вопросы по тегам:

Похожие вопросы: