工作中,我需要得到一个渲染复杂的前端页面的时间。请问那种计算两个时间戳差值的结果是不是真实的呢?例如:
var start = new Date();
doSomething();
var end = new Date();
console.log(end.getTime() - start.getTime()); //得到doSomething()所耗时长。
如果刨除变量end的new所耗的时间,剩下的时间是否是真正的dosomething的时间?
另外,如果doSomething()中包含了DOM操作,那么这种方法计算得出的时间是否包含了DOM重排+重绘的时间呢?
有网络请求,也就是异步 IO 在里面吗?
@yjhjstz 没有。如果是ajax等异步,就把这个写在回调里面
可以用console.time(‘some’)和console.timeEnd(‘some’)
或者 console.profile() console.profileEnd()
nodejs 有benchmark的包吗?
@zhangshiqiu 自豪地采用 CNodeJS ionic
@zhangshiqiu 这样的方式js可以获取到数据吗?我还要把这个时间发送到服务器做记录 自豪地采用 CNodeJS ionic
@flamingtop 同上问题,我一会儿去单位研究一下,多谢朋友 自豪地采用 CNodeJS ionic
浏览器有新的 performance API https://developer.mozilla.org/en-US/docs/Web/API/Performance
@echoloyuk 可以获取,但没有办法发送到服务器的
benchmark.js 这个是你需要的吗? https://github.com/bestiejs/benchmark.js