这是我的HTML文件: -
<!DOCTYPE html>
<html>
<head>
<title>My Page</title>
<script type="text/javascript">
var stringArray = new Array();
stringArray[0] = "Hi";
stringArray[1] = "how";
stringArray[2] = "are";
stringArray[3] = "you?";
var i = 0;
while(i<stringArray.length)
{
setTimeout(print,3000,i);
i++;
}
function print(k)
{
console.log(stringArray[k]);
}
</script>
</head>
</html>
这里我试图以3秒的间隔显示数组stringArray
中的每个字符串。但是当页面加载时,仅在开始时有3秒的暂停,然后我的数组中的所有4个字符串一起显示。 setTimeout()
似乎只是第一次生效。任何人都可以建议这里发生了什么,以及我需要做什么改变才能以3秒的间隔显示每个单独的字符串。