当window.location.assign()
和window.location.replace()
重定向到新页面时有什么区别?
答案 0 :(得分:104)
使用window.location.assign("url")
只会导致加载新文档。使用window.location.replace("url")
将替换当前文档,并将当前历史记录替换为该URL,以便您无法返回上一个加载的文档。
参考:http://www.exforsys.com/tutorials/javascript/javascript-location-object.html
答案 1 :(得分:29)
与
assign()
方法的不同之处在于,使用replace()
后,当前页面将不会保存在会话历史记录中,这意味着用户将无法使用“后退”按钮导航到该页面
答案 2 :(得分:28)
区别在于如何处理历史。 “替换”不会给你历史,“分配”会。
答案 3 :(得分:3)
<强> location.assign():强>
通过将路径传递给它来分配路径路径。即使在分配路径后,分配也会为您提供历史记录。
使用方法:值应传入其中。
例如: location.assign(“http://google.com”)
<强> location.replace():强>
如果您不想保留历史记录,将有助于替换路径。一旦你更换它的路径,它就不会给你一个历史。
使用方法:值应传入其中。
例如: location.replace(“http://google.com”)