Javascript 使用timeout和pass变量循环函数

Javascript 使用timeout和pass变量循环函数,javascript,Javascript,好吧,我觉得这很简单,我忽略了一些东西 我有一个数据数组,我正在传递到包含300行的函数中。 函数本身选择一个要更新的随机框和一个要传递的随机数组元素(0-299),然后更新该框 第一次迭代很好。第二个返回“uncaughtreferenceerror:rand_ad未定义” 我认为这可能是函数循环中的引号,它将内部变量视为字符串而不是实际变量,但我无法在它遇到错误之前将其渲染出来 有什么想法吗 你的猜测是正确的。将超时行更改为: t = setTimeout(loop, 3000, rand_

好吧,我觉得这很简单,我忽略了一些东西

我有一个数据数组,我正在传递到包含300行的函数中。 函数本身选择一个要更新的随机框和一个要传递的随机数组元素(0-299),然后更新该框

第一次迭代很好。第二个返回“uncaughtreferenceerror:rand_ad未定义”

我认为这可能是函数循环中的引号,它将内部变量视为字符串而不是实际变量,但我无法在它遇到错误之前将其渲染出来


有什么想法吗

你的猜测是正确的。将超时行更改为:

t = setTimeout(loop, 3000, rand_ad, rand_ad_box, ads_array);
向setTimeout传递字符串存在安全风险,不建议这样做。此外,它在超时发生之前不会执行代码,因此在函数退出后会取消对变量的引用

如果您需要它在IE中工作,则必须使用:

t = setTimeout(function () {
    loop(rand_ad, rand_ad_box, ads_array);
}, 3000);

你的猜测是正确的。将超时行更改为:

t = setTimeout(loop, 3000, rand_ad, rand_ad_box, ads_array);
向setTimeout传递字符串存在安全风险,不建议这样做。此外,它在超时发生之前不会执行代码,因此在函数退出后会取消对变量的引用

如果您需要它在IE中工作,则必须使用:

t = setTimeout(function () {
    loop(rand_ad, rand_ad_box, ads_array);
}, 3000);

你的猜测是正确的。将超时行更改为:

t = setTimeout(loop, 3000, rand_ad, rand_ad_box, ads_array);
向setTimeout传递字符串存在安全风险,不建议这样做。此外,它在超时发生之前不会执行代码,因此在函数退出后会取消对变量的引用

如果您需要它在IE中工作,则必须使用:

t = setTimeout(function () {
    loop(rand_ad, rand_ad_box, ads_array);
}, 3000);

你的猜测是正确的。将超时行更改为:

t = setTimeout(loop, 3000, rand_ad, rand_ad_box, ads_array);
向setTimeout传递字符串存在安全风险,不建议这样做。此外,它在超时发生之前不会执行代码,因此在函数退出后会取消对变量的引用

如果您需要它在IE中工作,则必须使用:

t = setTimeout(function () {
    loop(rand_ad, rand_ad_box, ads_array);
}, 3000);


您需要在调用变量之前定义它们。在函数的开头,添加:
var rand_ad_box,rand_ad
。如果它们在开始时没有定义,它将在第一个循环中跳闸。它可以很好地运行第一次迭代,只有在循环结束后才会出错。在调用变量之前,您需要定义变量。在函数的开头,添加:
var rand_ad_box,rand_ad
。如果它们在开始时没有定义,它将在第一个循环中跳闸。它可以很好地运行第一次迭代,只有在循环结束后才会出错。在调用变量之前,您需要定义变量。在函数的开头,添加:
var rand_ad_box,rand_ad
。如果它们在开始时没有定义,它将在第一个循环中跳闸。它可以很好地运行第一次迭代,只有在循环结束后才会出错。在调用变量之前,您需要定义变量。在函数的开头,添加:
var rand_ad_box,rand_ad
。如果它们在开始时没有定义,它将在第一个循环中跳闸。它第一次迭代运行得很好,只是在循环搞乱之后。别忘了,
rand_ad
和其他变量都是自由变量,这就成功了。如果你在这里,我会给你买杯啤酒哈哈。准备扔掉我的键盘。多谢!想想看,如果你是一个新手(从点上看),你需要一段时间才能接受答案。。。但这里有一个向上的投票:)这让我等了5分钟;)否则我会这么做的already@Sparatan117没问题。别忘了,
rand_ad
和其他变量都是自由变量的。这就成功了。如果你在这里,我会给你买杯啤酒哈哈。准备扔掉我的键盘。多谢!想想看,如果你是一个新手(从点上看),你需要一段时间才能接受答案。。。但这里有一个向上的投票:)这让我等了5分钟;)否则我会这么做的already@Sparatan117没问题。别忘了,
rand_ad
和其他变量都是自由变量的。这就成功了。如果你在这里,我会给你买杯啤酒哈哈。准备扔掉我的键盘。多谢!想想看,如果你是一个新手(从点上看),你需要一段时间才能接受答案。。。但这里有一个向上的投票:)这让我等了5分钟;)否则我会这么做的already@Sparatan117没问题。别忘了,
rand_ad
和其他变量都是自由变量的。这就成功了。如果你在这里,我会给你买杯啤酒哈哈。准备扔掉我的键盘。多谢!想想看,如果你是一个新手(从点上看),你需要一段时间才能接受答案。。。但这里有一个向上的投票:)这让我等了5分钟;)否则我会这么做的already@Sparatan117没问题。