0

我刚刚开始通过 Titanium 的 Appcelerator 开发应用程序,因此这也是我第一次使用 Javascript。在引用数组值方面遇到了一件令人困惑的事情,我只是希望有人能够告诉我发生了什么。

基本上它归结为在尝试迭代 tableView 时,以下返回正确的值

tableView.data[i].rows[++j]

然而,这总是返回 undefined

tableView.data[i].rows[j+1]

谁可以给我解释一下这个?

编辑:这是我正在谈论的循环

for (i in tableView.data)
for (j in tableView.data[i].rows)
if ("undefined" !== typeof tableView.data[i].rows[j].children[1] && "undefined" !== typeof tableView.data[i].rows[j+1]) {
    console.debug("i: " + i + " j: " + j)
} else
    console.debug("undefined")
4

1 回答 1

0

移动到下一个的 j+1 应该写为 (j+=1) 或 j++ 或使用后递增 ++j j+1 将始终保持 j 初始化为加一的值,因此在某些时候可能会出现溢出或无限循环。

于 2013-07-29T07:28:59.843 回答