首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何重复遍历javascript对象?

如何重复遍历javascript对象?
EN

Stack Overflow用户
提问于 2012-06-21 03:01:25
回答 2查看 179关注 0票数 1

我有一个javascript对象,像这样:

代码语言:javascript
复制
var object = [{ id: 1, title:"xyz" }, {id: 2, title: "abc"}, {id: 3, title: "sdfs"}];

现在我要做的是遍历对象,使其读取第一个id并输出"xyz",然后暂停5秒,然后遍历第二个id并输出"abc",再次暂停5秒,然后遍历第三个条目输出"sdfs",再次暂停5秒,从条目1重新开始。任何帮助都将不胜感激。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-06-21 03:03:53

您的基本递归函数:

代码语言:javascript
复制
function recursive(obj,idx) {
    if (obj[idx]) {
        alert(obj[idx].title);
       setTimeout(function(){recursive(obj,idx+1);}, 5000); // milliseconds
    };
};
recursive(myObject,0);

或者,无限循环:

代码语言:javascript
复制
function recursive(obj,idx) {
    if (obj[idx]) {
        alert(obj[idx].title);
        setTimeout(function(){recursive(obj,idx+1);}, 5000); // milliseconds
    } else {
        recursive(obj,0);
    };
};
recursive(myObject,0);

http://jsfiddle.net/Mezxw/

票数 5
EN

Stack Overflow用户

发布于 2012-06-21 03:08:32

代码语言:javascript
复制
var object = [{ id: 1, title:"xyz" }, {id: 2, title: "abc"}, {id: 3, title: "sdfs"}];

setTimeout(doNextObject, 5000);

var index = 0;
var length = object.length;

function doNextObject() {
    alert(object[index].title);

    index = ++index % length;
    setTimeout(doNextObject, 5000);
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11126387

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档