nullが入った変数のプロパティを読もうとすると発生します。getElementByIdで要素が取れていない(=null)ケースが最も多い原因です。
document.body.innerHTML = '<h1 id="title">Hello</h1>';
const el = document.getElementById("titel"); // idのタイポ
console.log(el.textContent);
document.body.innerHTML = '<h1 id="title">Hello</h1>';
const el = document.getElementById("title");
if (el) {
console.log(el.textContent);
} else {
console.log("要素が見つかりません");
}
▶ 修正済みコードを実行エディタで開く
getElementByIdは要素が見つからないとnullを返すため、idのつづりをまず確認します。HTMLより前に実行される場合はDOMContentLoadedイベントの中で実行するか、scriptタグをbodyの最後に置きます。el?.textContent(オプショナルチェーン)を使えばnullでもエラーにならず undefined になります。