Ionică Bizău
Ionică Bizău

Reputation: 113405

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?

Upvotes: 12

Views: 16746

Answers (2)

Panade
Panade

Reputation: 289

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.

Upvotes: 1

Wildcard27
Wildcard27

Reputation: 1459

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

Upvotes: 5

Related Questions