Какие практики рекомендуется использовать при работе с элементами, чтобы в случае их отсутствия на странице код не "упал"? Например, есть следующий псевдокод:
async function getData() {
const { hash } = window.location;
if (!hash) return;
const card = document.querySelector(`[data-id="${hash.substring(1)}"]`);
if (!card) return;
const { url } = card.dataset;
if (!url) return;
const response = await fetch(url);
const data = await response.json();
return data;
}
Это нормально использовать на каждом шаге проверки на наличие элемента, атрибута и т.д.? Может есть другие подходы? Использовать try...catch?