location.replace 和 location.href 有啥区别?

Posted

技术标签:

【中文标题】location.replace 和 location.href 有啥区别?【英文标题】:What is the difference between location.replace and location.href?location.replace 和 location.href 有什么区别? 【发布时间】:2013-10-08 11:28:32 【问题描述】:

两者有什么区别:

location.replace(url)

location.href = url

我读到第一种方法刺激HTTP redirect,第二种方法类似于通过单击链接来跟踪网页。

但我真的不明白,这是什么意思。

【问题讨论】:

可能重复http://***.com/questions/1865837/whats-the-difference-between-window-location-and-window-location-replace Difference between window.location.href, window.location.replace and window.location.assign的可能重复 【参考方案1】:

location.replace 不会更新浏览器的历史记录,你不能按返回按钮,location.href 很像点击链接。

Location.replace() 方法将当前资源替换为 一个在提供的 URL。与 assign() 方法的区别是 使用 replace() 后,当前页面将不会保存在 会话历史,这意味着用户将无法使用后退按钮 导航到它。

来源:MDN

【讨论】:

以上是关于location.replace 和 location.href 有啥区别?的主要内容,如果未能解决你的问题,请参考以下文章

js实现页面跳转,location.href和location.replace和location.reload的区别

location.reload() 和 location.replace()的区别和应用

window.location.href和window.location.replace的区别

window.location.replace和window.location.href的区别

window.location.href和window.location.replace的区别

window.location.href/replace/reload()/页面跳转+替换+刷新