我正在构建一个使用 Web Performance API 的基于 Web 的页面渲染基准应用程序。它所做的基本上是测量浏览器在命令渲染一堆 div 元素时需要多少时间,然后构建一个隐藏的表单,将计算结果放入其中,然后将表单提交到另一个 PHP 页面进行处理。问题是,计算结果一直是负数并且在几万亿范围内(即十四位数字:-1364403484035)。这是代码:
window.onload=function(){
results=(performance.timing.loadEventEnd-performance.timing.responseEnd);
var browserData = document.createElement("form");
browserData.setAttribute("method","post");
browserData.setAttribute("action","results.php");
var hiddenField = document.createElement("input");
hiddenField.setAttribute("type", "hidden");
hiddenField.setAttribute("name", "res");
hiddenField.setAttribute("value", results);
browserData.appendChild(hiddenField);
document.body.appendChild(browserData);
browserData.submit();`
更新 1:
我对我的代码做了一些调整,如下所示:
window.onload=function(){
// My edits
beginning=performance.timing.responseEnd;
ending=performance.timing.loadEventEnd;
results=(ending-beginning);
// End of my edits
var browserData = document.createElement("form");
browserData.setAttribute("method","post");
browserData.setAttribute("action","results.php");
var hiddenField = document.createElement("input");
hiddenField.setAttribute("type", "hidden");
hiddenField.setAttribute("name", "res");
hiddenField.setAttribute("value", results);
browserData.appendChild(hiddenField);
document.body.appendChild(browserData);
browserData.submit();`
并使用浏览器的 JavaScript 控制台查看变量的值,我发现ending = 0