gpt4 book ai didi

javascript - 检查 var 是否大于或小于并执行指定的操作

转载 作者:行者123 更新时间:2023-12-02 14:24:46 25 4
gpt4 key购买 nike

我有一个小的 navigationSlider 函数:

    function navigateSlider(btnClicked) {

if (btnClicked == 'next') {
i++;
} else {
i--;
}

if (i > movies.length-1) {
i = 0
}

var movie = movies[i].poster;
document.getElementById('movie_slider').innerHTML = '<img src="' + movie + '"/>';
};

这会检查哪个按钮被单击,然后从 var i 中加 1 或减 1(从 0 开始)。

我希望能够循环遍历数组中的对象,因此如果到达数组中的最后一个对象,则 var 我应该重置为第一个对象,并且当用户遍历先前的对象并到达第一个对象时object var i 应该重置为数组中的最后一个对象,以便用户可以一次又一次地循环列表。但我在为最后一部分设置 if 语句时遇到了麻烦。

在这一部分:

    if (i == movies.length) {
i = 0
}

检查 i var 是否等于电影数组中的对象,然后将其重置为 0,然后用户可以再次循环遍历该数组。但是,什么是相反的好解决方案,以便用户可以使用上一个按钮循环遍历数组?

最佳答案

尝试这个逻辑(你可以避免最后一个 if 条件)

if (btnClicked == 'next') 
{
i = i == movies.length - 1 ? 0 : i + 1 ;
}
else
{
i = i == 0 ? movies.length - 1 : i - 1 ;
}

按照您的要求使用简单的 if/else :)

if (btnClicked == 'next') 
{
if ( i == movies.length - 1 )
{
i = 0;
}
else
{
i++;
}
}
else
{
if ( i == 0 )
{
i = movies.length - 1;
}
else
{
i--;
}
}

关于javascript - 检查 var 是否大于或小于并执行指定的操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38371745/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com