Как перенаправить на другую страницу в Javascript?
Есть много способов перенаправить на другую страницу. Но что лучше?
// 1. window.location
window.location.replace('https://www.example.com')
window.location.assign('https://www.example.com')
window.location.href = 'https://www.example.com'
document.location.href = '/path'
// 2. window.history
window.history.back()
window.history.go(-1)
// 3. window.navigate; ONLY for old versions of Internet Explorer
window.navigate('top.jsp')
// 4. More ways... but probably not a good idea
self.location = 'https://www.example.com';
top.location = 'https://www.example.com';
// 5. jQuery
$(location).attr('href','https://www.example.com')
$(window).attr('location','https://www.example.com')
$(location).prop('href', 'https://www.example.com')
Лучший способ – window.location.replace(...)
window.location.replace(...)
лучше, чем window.location.href
replace()
не сохраняет исходную страницу в истории сеансов, а это означает, что пользователь не застрянет в бесконечном фиаско кнопки «Назад». window.location.href
похоже на нажатие ссылки, а replace()
похоже на перенаправление.