请教jquery运行后统计时间的一个问题

bullB 2009-12-17 10:37:48
现在要做的工作是,$.get后,eval(data),然后计算整个过程使用的时间。
$("#XiuGaiJiFenBiaoZhun").change(
function()
{
var timeStart = new Date();
//if ($("#XiuGaiJiFenBiaoZhun").val()!="")
{
$.get("XiuGaiJiFenBiaoZhun.php", {"XiuGaiJiFenBiaoZhun":$("#XiuGaiJiFenBiaoZhun").val(), "XiuGaiJiFenXiangMu":$("#XiuGaiJiFenXiangMu").val()}, function(data){eval(data);});
}
if ($("#XiuGaiJiFenBiaoZhun").val() == "")
{
$.get("XiuGaiJiFenXiangMu.php", {"XiuGaiJiFenXiangMu":"", "XiuGaiJiFenBiaoZhun":""}, function(data){eval(data);});
}
var timeEnd = new Date();
var timeDiff = timeEnd - timeStart;
alert(timeDiff);
}
);

原来的代码是这样的,使用这种方法可能不对是吧?因为alert出来的数据大多是0,有少部分是16(ms)。并且是alert后,页面的内容才改变(alert后,才eval(data))。
请问这种情况下,用什么方法才能准确地计算$.get+eval(data)所使用的时间?

谢谢
...全文
68 3 打赏 收藏 举报
写回复
3 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
zengtan1021 2009-12-17
  • 打赏
  • 举报
回复
木有问题. eval又不是异步的. 0ms可能是你抓到缓存了. 你只用firebug就可以看到异步花掉的时间了.
bullB 2009-12-17
  • 打赏
  • 举报
回复
现在这样做
eval(data);改为下面的函数
evalNew(data, 这个参数为原来的时间)
{
eval(data);
var timeEnd = new Date();
var timeDiff = timeEnd - 原来的时间;
alert(timeDiff);
}
这个准确不准确?
bullB 2009-12-17
  • 打赏
  • 举报
回复
用firebug看确实不错
发帖
JavaScript

8.7w+

社区成员

Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
帖子事件
创建了帖子
2009-12-17 10:37
社区公告
暂无公告