Вечер добрый в хату...
Камрады, люблю кодить, но чувствую, что что-то не то. Люблю ваниль. И на ней стараюсь писать.
Проблема: у меня в коде часто фигурирует !== u
let u = undefined;
И вот пример кода:
// if screen resolution is higher then 1023px
if (xxx.matches) {
// change site title position if mobile
stdb.appendChild(st);
// if social icons do not exist
[B] if (sil !== u) {[/B]
sibd.appendChild(sil);
}
mll.className = 'header-meta-block__list';
mldb.appendChild(mll);
// if header red menu exist
[B]if (hbn !== u) {
dhmp.appendChild(hbn);
// if header red menu do not exist
} else {
return;
}[/B]
// if screen resolution is higher then 1023px
} else {
stmb.appendChild(st);
// if mobile navigation content exist if desktop
if (mno.style.display === 'block') {
document.body.style.overflow = 'hidden';
mnb.style.position = 'fixed';
}
[B] if ((sibm !== u) || (sil !== u)) {[/B]
sibm.appendChild(sil);
}
mll.className += ' meta--show';
mlmp.appendChild(mll);
// if desktop, change red menu position
[B] if (hbn !== u) {[/B]
hbn.className = 'mobile-navigation-show';
mhmp.appendChild(hbn);
}
}
}
// screen resolution function
let xxx = window.matchMedia('( min-width: 1023px )');
changeHeaderElements(xxx);
xxx.addListener(changeHeaderElements);
Как этот код можно улучшить? Как бы вы решили вопрос с частым уточнением в коде, что такой-то элемент !== undefined ??