Поэтому, когда expr1 является (или оценивает) одним из этих 0,"",false,null,undefined,NaN, тогда expr2 возвращается, иначе expr1 возвращается
Ответ 2
Он называл избыточность, но в этом случае это хорошо. В принципе, если item не определен (или иначе ложный (false, 0, ""...), то мы даем ему значение по умолчанию.
Наиболее распространенный пример:
evt = evt || window.event;
Ответ 3
Если элемент существует, установите элемент в элемент или установите его на {}