我正在创建一个'简单'的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格式显示。
我忘记了什么,或者我如何克服这个?
由于
答案 0 :(得分:1)
您看到undefined
这一事实表明您正在访问尚未设置的数组索引。你的代码一目了然,所以我猜你还有一些代码没有显示哪些也使用i
作为循环变量并将其设置为值{{ 1}}在上面的代码运行之后。