我正在尝试检测连接速度,所以我计划使用window.performance对象进行持续时间计算。
我有点困惑于 window.performance.timing
对象是基于整个页面加载还是基于最后一次请求和响应生成的。
例如:
我有5个服务器调用用于网页加载,performance.timing
对象是基于所有5个服务器调用生成的,还是基于第5个服务器调用(即最后一个调用)生成的。
参考样本连接速度计算
var bitsLoaded = 100000; //bits total size of all files (5 server call).
var duration = performance.timing.responseEnd - performance.timing.navigationStart;
var speedBps = Math.round(bitsLoaded / duration);
var speedKbps = (speedBps / 1024).toFixed(2);
var speedMbps = (speedKbps / 1024).toFixed(2);
有什么不清楚的需要解释
你知道window.performance是什么吗?
performance.timing.responseEnd - performance.timing.responseStart;
只会测量根文档(例如 HTML)从服务器发送所需的时间,而不是 Karthick 提到的 5 次服务器调用和 100000 位。 - NicJ