0

我想测量 UI 交互时间,如下所示。

  1. 选择菜单和显示结果之间的时间。
  2. 用户输入和在 UI 中显示字母之间的时间

我想很多人建议我测量函数调用和结果之间的时间,但我想知道另一种方法来获取时间,尽管 UI 发生了变化。是否可以检查 UI 更改的时间?

我正在开发的工具是由 Javascript 制作并在浏览器上运行的。

4

1 回答 1

1

这是我的答案:

“Javascript 是单线程的”。

那么,这意味着什么:

Javascript 顺序运行代码。不可能同时运行两段不同的 Javascript 代码,因为它不支持多线程。

javascript代码的执行是逐行的。因此不可能同时执行多行(虽然它会非常小)

一个简单的解决方案:

check_my_time_first() ;//these will be functions returning the epoch time
check_my_time_after();

你只需要console.log,flag variables 和 epoch time

首先,差异将非常小。

var milliseconds_before = (new Date).getTime();//use this code when user clicks

var milliseconds_after = (new Date).getTime();//use this when result appears.

使用标志变量来了解某些执行何时完成。

另一个例子:

var execution_over=false;
function doSomething(){
console.log("start_time"+milliseconds_before)
//some code to be executed;

execution_over=true

if(execution_over==true){
console.log("time="+milliseconds_after)
   }
}

区别:

 var diff=milliseconds_before - milliseconds_after;

巧妙地放置此代码,您将看到时间上的差异。

重要的是要了解基础知识。我希望我的回答有所帮助。

于 2013-08-18T10:12:06.613 回答