关于chrome刻意压制非当前标签页工作效率的小测试
测试一些代码的时候发现了一个有趣的小现象。非当前标签的执行效率总是低于当前标签。这种情况以前用chrome的时候也遇到过,比如后台打开个视频啥的,页面的载入速度似乎慢于在当前标签页打开时的速度。
然后随手写段关于时间的代码,试图对比setInterval模拟的时间与真实流逝的时间,发现确实有区别。
HTML:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>test</title> <script src="test.js"></script> </head> <body> <p> 计算的时间:<span id="p">0</span>ms </p> <p> 实际的时间:<span id="t">0</span>ms </p> </body> <style>p{ font-size:large; text-align:center; }</style> </html>
JS:
onload=function(){ var p=document.getElementById("p"),t=document.getElementById("t"); var dateStart=new Date(),dateP=0; setInterval(function(){ p.innerText=(dateP+=500); t.innerText=(new Date)-dateStart; },500) };
然后把这个页面扔到后台运行一阵,看到结果:
似乎后台的标签在以一半的效率执行呢...