Why location.reload() is slower than the other page reload methods?

Few months ago I posted this answer about how to refresh the page via JavaScript.

I provided a JSFIDDLE DEMO too:

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"))]();
});

Someone noticed that location.reload() is slower than the other methos. Now I can see the same thing.

Why is it slower? Why the others are faster?


Been looking for this myself and the best reference I could find is actually on w3schools.com

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

location.reload(forceGet)

forceGet:

false - Default. Reloads the current page from the cache.

true - The current page must be reloaded from the server


From the Mozilla Developement Network I guess the .reload method may fetch all files from the Server again. This would be similar to a CTRL + F5 reload.

The location.href for example, simply follows the link which may be cached. As for the MDN definition the behave is not clearly defined so I guess its browser and case specific behave.

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

上一篇: 如何在PHP中刷新页面

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