Проверка Javascript на нулевые объекты и значения кэширования

В повторном введении javascript я рассмотрел 2 примера что я понятия не имею, когда и где их использовать. Ниже цитата:

&& и || операторы используют логику короткого замыкания, что означает, что выполнение второго операнда зависит от первого. Это полезно для проверки нулевых объектов перед доступом к их атрибутам: var name = o && o.getName();

Или для кэширования значений (когда ложные значения недействительны): var name = cachedName || (cachedName = getName());

Будет ли имя содержать логическое значение, если да, то какой в ​​этом смысл? Это может быть нубский вопрос, но я бы хотел, чтобы кто-нибудь объяснил это на примере.


person Mohammad Mhsoun    schedule 11.02.2020    source источник
comment


Ответы (1)


var name = o && o.getName();

Этот код используется, чтобы избежать ошибок, если o не определено.

var name = cachedName || (cachedName = getName());

Этот код будет использоваться, если getName является дорогостоящей операцией, такой как сетевой вызов. Это поможет нам вызвать getName только в первый раз и во второй раз, когда он будет получен из cachedName.

person vishnu sandhireddy    schedule 11.02.2020