为什么location.reload()比其他页面重载方法慢?

几个月前我发布了关于如何通过JavaScript刷新页面的答案。

我也提供了一个JSFIDDLE DEMO

var solutions = [
    function () { location.reload(); },
    function () { history.go(0); },
    function () { location.href = location.href; },
    function () { location.href = location.pathname; },
    function () { location.replace(location.pathname); },
    function () { location.reload(false); },
];

$("[data-func]").on("click", function () {
    solutions[parseInt($(this).attr("data-func"))]();
});

有人注意到location.reload()比其他方法慢。 现在我可以看到同样的事情。

为什么它更慢? 为什么其他人更快?


一直在寻找这个我自己,我能找到的最好的参考实际上是在w3schools.com

http://www.w3schools.com/jsref/met_loc_reload.asp

location.reload(forceGet)

forceGet:

- 默认。 重新加载缓存中的当前页面。

true - 当前页面必须从服务器重新加载


从Mozilla开发网络中,我猜测.reload方法可能会再次从服务器获取所有文件。 这与CTRL + F5重新加载类似。

例如, location.href简单地跟在可能被缓存的链接之后。 至于MDN定义的行为没有明确定义,所以我猜它的浏览器和特定的行为。

链接地址: http://www.djcxy.com/p/28685.html

上一篇: Why location.reload() is slower than the other page reload methods?

下一篇: Browser support for window.location.reload(true)