我想遍历一个数组,但想延迟输出数组的每个值。这是我目前对它应该如何工作的理解:
编辑
请求的 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);
关于Javascript:延迟遍历数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30865456/