不断循环javascript数组并将结果显示给div?

Col*_*nel 7 javascript arrays loops

我有一堆我的网站的推荐信,目前在一个页面上我试图得到一个div以5秒的间隔显示每个1,如果数组达到最后一个值它应该再次开始回到数组的开头.

这是我到目前为止所拥有的......

var testimonial = new Array();
testimonial[1] = "Rugby";
testimonial[2] = "Baseball";
testimonial[3] = "Cricket";
var length = testimonial.length
var i = 1;
setInterval(function() {
    while (i <= length) {   
        $('#testimonials p').html(testimonial[i]);
        ++i;
        if (i == length) {
            i == 1;
        }
    }
}, 5000);
Run Code Online (Sandbox Code Playgroud)

任何帮助都会很棒,谢谢.

Dav*_* Hu 21

尝试

var testimonial = ['Rugby', 'Baseball', 'Cricket'];
var numTestimonials = testimonial.length;
var index = 0;

setInterval(function() {
    $('#testimonials p').text(testimonial[index]);        
    index = (index + 1) % numTestimonials;
}, 5000);
Run Code Online (Sandbox Code Playgroud)

JavaScript数组是0索引的并且具有方便的数组文字语法.使用模数运算符(%)是将计数器一旦达到某个值就将其包装回0的惯用方法.