Angularjs 计时以角度渲染某物所需的时间

Angularjs 计时以角度渲染某物所需的时间,angularjs,Angularjs,我目前使用的是第三方指令,我想知道在屏幕上渲染东西需要多长时间 console.time('time'); tableservice.setColumns(columns); var dataView = new DataView(); dataView.setItems(datarows); $scope.columns = tableservice.getColumns(); $scope.dataView = dataView; console.timeEnd(

我目前使用的是第三方指令,我想知道在屏幕上渲染东西需要多长时间

  console.time('time');
  tableservice.setColumns(columns);
  var dataView = new DataView();
  dataView.setItems(datarows);
  $scope.columns = tableservice.getColumns();
  $scope.dataView = dataView;
  console.timeEnd('time');
这是我为提供模型而生成的代码,以便它可以显示在视图上

我想计算一下需要多长时间,发现console.time方法变化太大,而且时间很糟糕

有时我得到0.000ms和1.000ms,这根本不是细粒度的

对于我来说,什么是最好的测试方法,以查看在视图上渲染某物需要多长时间

编辑:

我试过很多计时方法,它们似乎都跳得太多了,所以我假设时间不是很准确


是否有更好的方法来测试模型在屏幕上渲染所需的时间?

如果您想要更精确的结果,可以使用new Date.getTime以微秒为单位获取时间

另外,performance.now似乎适用于这里,而且它也更加准确。在这里可以看到一个很好的答案:

因此:


你也可以看看:渲染是在你离开角度执行上下文之后发生的,如上所述,我认为你只是在测量JavaScript代码的执行,而不是渲染。我不知道你尝试了哪些计时方法,但是你尝试过使用mark。。。测量,但我会尝试一下。。。
  var startTime = new Date().getTime();
  tableservice.setColumns(columns);
  var dataView = new DataView();
  dataView.setItems(datarows);
  $scope.columns = tableservice.getColumns();
  $scope.dataView = dataView;
  console.log(new Date().getTime() - startTime);