如何在JavaScript中正确使用迭代值?

时间:2012-07-05 12:11:08

标签: javascript html arrays function iteration

我正在创建一个'简单'的javaScript函数,当用户点击下一个或上一个时,它基本上会在页面上显示新信息。 信息来自一个数组,我想使用i ++或i--来调用数组的元素。

继承我的JavaScript:

var titles = ["Dundalk", "Navan", "Drogheda", "Dublin"];
var i = 0;

function next()
    {
    i++;
    if (i == titles.length)
        {
        i = 0;
        }
    var object = document.getElementById('tname');
    object.innerHTML = titles[i];
    }

function prev()
    {
    if (i == 0)
        {
        i = titles.length;
        }
    i--;
    var object = document.getElementById('tname');
    object.innerHTML = titles[i];
    }

问题是,当我在HTML页面中运行此代码时,我得到一个“未完成”的结果。 JavaScript没有意识到我在开始时已经初始化为0。 例如,如果我将标题[i]更改为标题[2],则正确的文本将以HTML格式显示。

我忘记了什么,或者我如何克服这个?

由于

1 个答案:

答案 0 :(得分:1)

您看到undefined这一事实表明您正在访问尚未设置的数组索引。你的代码一目了然,所以我猜你还有一些代码没有显示哪些使用i作为循环变量并将其设置为值{{ 1}}在上面的代码运行之后。