gpt4 book ai didi

javascript - 每次从函数中得到相同的结果

转载 作者:行者123 更新时间:2023-11-28 08:31:43 25 4
gpt4 key购买 nike

为什么我的函数返回相同的结果?

我想将“ping”函数中的所有值输入到一个数组中,然后以 html 形式输出该数组。我运行该函数 3 次,但所有 3 次的结果都是相同的。你能告诉我为什么吗?

(顺便说一句,域名只是一个示例,不能将原件放在这里)

  var str = ' ';
var t=[];
var n= 2;
var arr = ["www.google.com","www.example.com","www.example2.com"];
var results = [];
var finalurl = '';

function fun1(){

for (var i=0; i < arr.length; i++){
str = "http://" + arr[i] + "/images/";
finalurl = str + "image-l.gif" + "?id=" + (new Date()).getTime();
ping(finalurl);
textt += results[i] + " ";
$(‘#ping’).html(textt);

}
}


var ping = function(finalurl) {

var l = 0;

t.push((new Date()).getTime());
if(t.length > n) {
p=t[2]-t[1];
results.push(p);
}
else {
var img = new Image;
$(img).load(function() {
ping();
}).attr('src', finalurl);
}
}

//html的一小部分:

<h2><a href="#" onclick="fun1();">run</a></h2>
<h1 id=“ping”> </h1>

最佳答案

这会生成三个网址(arrlength),但仅尝试显示两个(n 的值)。每次的 URL 都不同,但您在 ping 中限制它们,因此不会使用新的 URL。

尝试将 n 设置为更大的数字,您会发现每次点击都会加载更多图像 - 就目前情况而言,它会尝试在单次点击 (3) 中加载比允许的图像 (2) 更多的图像.

注意:即使这些 url 不同,图像也可能是相同的,如果服务器忽略 id 参数,就会发生这种情况...这可能会发生,因为它需要服务器进行额外的配置处理对“.gif”资源(这不是已知的服务器端脚本语言)的请求 - 默认情况下,服务器将仅返回资源 image-l.gif

顺便说一句:在 $('#ping') 中,这些引号是错误的。另外 textt 未定义 - 我确实将其定义为 var textt = ''; 用于我的测试。

关于javascript - 每次从函数中得到相同的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21776658/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com