location.reload() ≠ location.href=location.href

Увидел у Никиты Васильева во внутренних бложиках, что вызов «location.reload()» не эквивалентен присваиванию location.href в себя же. Оказывается, последний перезагружает страницу из кеша во всех браузерах, кроме «Оперы».

Комментарии 6

Artemy Tregubenko (arty.name) № 1
логично: обновить страницу и перейти по адресу — разные действия
Евгений Степанищев (bolknote.ru) автор № 2
Логично, когда об этом знаешь. Когда не знаешь, то логикой до этого не дойти. Кроме того, в «Опере» это не так.
Artemy Tregubenko (arty.name) № 3
по сравнению с тем, что несколько лет назад location.reload() на странице с #something в урле не делал ничего, это логичное поведение : )
Guest № 6
Попробовал на 10.10.1893:

javascript:location.reload()
грузит из интернета эту страницу с '#05' в урле (check documents = always, при других не проверял)

javascript:location.href=location.href; void(0)
из-за '#05' ничего не делает, если убрать — грузит из интернета