Javascript:延迟遍历数组

标签 javascript arrays

我想遍历一个数组,但想延迟输出数组的每个值。这是我目前对它应该如何工作的理解:

编辑

请求的 JS fiddle :http://jsfiddle.net/d3whkjww/

    loopThroughSplittedText: function(splittedText) {

        for (var i = 0; i < splittedText.length; i++) {
            // for each iteration console.log a word
            // and make a pause after it
            setTimeout(
                console.log(splittedText[i]),
                1000
            );
        };

    },

然而,它不起作用,我相信它可能起作用,因为“for”循环中的参数必须在 setTimeout 函数内。但我不知道如何让它发挥作用。

我得到的只是数组的每个值,但我希望它们延迟出现。我该怎么做?

最佳答案

var splittedText = ["Hello", "World", "How", "Are", "You", "Today"];

function loopThroughSplittedText(splittedText) {
    for (var i = 0; i < splittedText.length; i++) {
        // for each iteration console.log a word
        // and make a pause after it
        (function (i) {
            setTimeout(function () {
                document.getElementById('text').innerHTML += splittedText[i];
                console.log(splittedText[i]);
            }, 1000 * i);
        })(i);
    };
}
loopThroughSplittedText(splittedText);

Fiddle Demo

关于Javascript:延迟遍历数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30865456/

相关文章:

javascript - JS - 对象到数组到 Google Sheets 批量更新

javascript - 为什么 jquery 代码不能在服务器上运行但可以在我的 PC 上运行?

javascript - 将 Google map 高程输出转换为英尺而不是米

arrays - 如何在 C 中创建一个具有负下界和正上限的二维数组?

c# - 在不使用 List 的情况下如何在 C# 中执行此操作?

PHP array_intersect_key 但保留 array2 中的值

c++ - 在 C++ 中平衡二维数组

javascript - 如果单击特定链接,如何更新 div 内容

javascript - 正则表达式、字符数限制

javascript - Chrome Extension/Javascript-检测 Chrome 浏览器中的用户语言