跳到主要内容
CNode

请教大家一个关于使用JS计算所耗时长的问题

问答
Eecholoyuk发布于 10 年前最后回复 10 年前
1168680

工作中,我需要得到一个渲染复杂的前端页面的时间。请问那种计算两个时间戳差值的结果是不是真实的呢?例如:

var start = new Date();
doSomething();
var end = new Date();
console.log(end.getTime() - start.getTime()); //得到doSomething()所耗时长。

如果刨除变量end的new所耗的时间,剩下的时间是否是真正的dosomething的时间?

另外,如果doSomething()中包含了DOM操作,那么这种方法计算得出的时间是否包含了DOM重排+重绘的时间呢?

查看回复

回复 (11)

B
broven#1110 年前

benchmark.js 这个是你需要的吗? https://github.com/bestiejs/benchmark.js

Z
zhangshiqiu#1010 年前

@echoloyuk 可以获取,但没有办法发送到服务器的

D
dd1994#910 年前
E
echoloyuk#810 年前
引用 flamingtop或者 console.profile() console.profileEnd()

@flamingtop 同上问题,我一会儿去单位研究一下,多谢朋友 自豪地采用 CNodeJS ionic

E
echoloyuk#710 年前
引用 zhangshiqiu可以用console.time('some')和console.timeEnd('some')

@zhangshiqiu 这样的方式js可以获取到数据吗?我还要把这个时间发送到服务器做记录 自豪地采用 CNodeJS ionic

Y
yakczh#510 年前

nodejs 有benchmark的包吗?

F
flamingtop#410 年前

或者 console.profile() console.profileEnd()

Z
zhangshiqiu#310 年前

可以用console.time('some')和console.timeEnd('some')

E
echoloyuk#210 年前
引用 yjhjstz有网络请求,也就是异步 IO 在里面吗?

@yjhjstz 没有。如果是ajax等异步,就把这个写在回调里面

Y
yjhjstz#110 年前

有网络请求,也就是异步 IO 在里面吗?

参与回复

登录后即可参与回复。登录