Javascript 到达数据对象末尾时停止迭代

Javascript 到达数据对象末尾时停止迭代,javascript,gsap,Javascript,Gsap,使用TweenMax库,我无法在到达数据对象末尾时终止或停止delayedCall,而不是循环,因为它是一个自调用函数 在上面的示例中,数据中的最后一项没有显示。实际上,这是因为在设置变量之前,您正在递增iter变量。这会导致它不显示最后一项,您要在以下各项之后递增: function setContent() { element.html(data[iter].content); iter = iter >= data.length-1 ? -1 : iter;

使用TweenMax库,我无法在到达数据对象末尾时终止或停止
delayedCall
,而不是循环,因为它是一个自调用函数


在上面的示例中,数据中的最后一项没有显示。

实际上,这是因为在设置变量之前,您正在递增
iter
变量。这会导致它不显示最后一项,您要在以下各项之后递增:

function setContent() {
    element.html(data[iter].content);
    iter = iter >= data.length-1 ? -1 : iter;
    iter = iter + 1;    
}
基本上,当您想查看
[0,1,2]
时,您正在查看索引
[1,2,3]


如果我这样做,
数据[iter]
在最后一项之后未定义。@你的权利,因为你想做的偏移量发生了变化
data.length-1-1:iter
而不是
data.length-1:iter