535 способов перезагрузить страницу с помощью JavaScript - каковы последствия? - PullRequest
10 голосов
/ 10 августа 2011

Кто-то перечислил 535 различных способов перезагрузки страницы в Javascript:

http://www.phpied.com/files/location-location/location-location.html

Например:

location = location
location = location.href
location = window.location
location = self.location
location = window.location.href
location = self.location.href
location = location['href']
location = window['location']
location = window['location'].href
location = window['location']['href']
location = window.location['href']
location = self['location']
location = self['location'].href
location = self['location']['href']
location = self.location['href']
location.assign(location)
location.replace(location)
window.location.assign(location)
window.location.replace(location)
self.location.assign(location)
self.location.replace(location)
location['assign'](location)
window.location['assign'](location)
self['location'].assign(location)
self['location']['assign'](location)
self['location']['replace'](location)
location.href = location
location.href = self.location
location.href = window.location.href

Мне интересно, если кто-нибудь знаеткак они обрабатываются по-разному в браузере - обновляет ли страница страницу, но перезагружает кеш - или нет в зависимости от обстоятельств?

Ответы [ 2 ]

6 голосов
/ 11 августа 2011

Все эти примеры обрабатываются браузером одинаково.

На самом деле, большинство из них - это просто разные способы доступа к переменной в Javascript. Вероятно, вы могли бы написать аналогичный список с «XXX различными способами присвоения глобальной переменной значения другой глобальной переменной».

Например: location.href, window.location.href, self.location.href, location['href'], window.location['href'], self.location['href'] все указывают на одно и то же значение.

В списке, который вы разместили, есть только два действительно разных способа: :

location = location //assign the whole location object to the location global variable
location = location.href //assign the string location.href to the location global variable
5 голосов
/ 07 декабря 2011

location.reload() действует как отправка формы (т. Е. Передает все значения формы)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...