在下面的链接中,为什么他们在javascript步骤的slides [slideIndex-1] .style.display =“ block”处添加“ -1”? https://www.w3schools.com/howto/howto_js_slideshow.asp
答案 0 :(得分:1)
我了解这是因为slideIndex(1)的值与幻灯片的长度进行了比较,并且因为slideIndex的值增加了1,然后减去了它,以避免在尝试访问元素时出现undefined
幻灯片数组超出范围。
例如
具有一个具有以下值的数组,并记住数组是0个索引
const slides = [1, 2, 3];
如果您尝试进入位置4
slides[4];
您将获得一个undefined
,并且在幻灯片放映的背景下,您可能会得到一个错误,因此,为了防止该错误,请在获取幻灯片数组中的值之前先对slideIndex值进行替换。
通常更常见的做法是从长度1开始减去,然后从0开始计数。