window.location.assign()和window.location.replace()之间的区别


102

window.location.assign()window.location.replace()两者都重定向到新页面时有什么区别?

Answers:



36

不同之处在于如何处理历史记录。“替换”不会给您历史记录,“分配”会给您历史记录。


31

根据MDN:

与该assign()方法的区别在于,使用replace()当前页面后将不会保存在会话历史记录中,这意味着用户将无法使用“后退”按钮导航到该页面。


10
  1. location.assign():

    通过传递路径来分配路径。即使在分配路径之后,“分配”也会为您提供历史记录。

    使用方法:应将值传递给它。

    例如: location.assign("http://google.com")

location.assign()

  1. location.replace():

    如果您不想保留历史记录,则有助于替换路径。替换路径后,它不会为您提供历史记录。

    使用方法:应将值传递给它。

    例如: location.replace("http://google.com")

location.repalce()

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.