有人列出了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
我很好奇是否有人知道这两者在浏览器上的差异-是否会刷新页面但清除缓存-或者情况并非如此?
location.reload(1);
和window.location.replace(location);
不会通过相同的代码路径运行:https://bugs.chromium.org/p/chromium/issues/detail?id=280460#c11这里有些答案提到可能与表单[重新]提交有关。 - Vasiliy Sharapov