for (let i = 0; i < slides.length; i++) {
            const button = document.createElement('button');
            dots.push(button);
            document.querySelector('nav').appendChild(button);
}
ここの部分で
const button = document.createElement('button');
と <button> を定数 button に代入していますが、今回のケースだと 3 つの <button> がそれぞれの button に代入され、 button という定数が 3 つ出来るように見えるのですが、そうではないのでしょうか?
この回答を見るにはプレミアムプランへの登録が必要です
プレミアムプランとは?