当 window.location.assign()和 window.location.replace()都重定向到一个新页面时,它们之间的区别是什么?
window.location.assign()
window.location.replace()
According to MDN:
与 assign()方法的不同之处在于,在使用 replace()之后,当前页面将不会保存在会话历史中,这意味着用户将无法使用 Back 按钮导航到该页面。
assign()
replace()
区别在于如何处理历史记录。“替换”不会给你历史记录,“分配”会。
使用 window.location.assign("url")只会导致加载新文档。使用 window.location.replace("url")将替换当前文档,并使用该 URL 替换当前历史记录,这样您就不能返回到之前加载的文档。
window.location.assign("url")
window.location.replace("url")
参考资料: http://www.exforsys.com/tutorials/javascript/javascript-location-object.html
location.assign():
通过向路径传递路径来分配路径。即使在分配了路径之后,分配也会给你一个历史记录。
使用方法: 值应该传递给它。
Eg: location.assign("http://google.com")
location.assign("http://google.com")
Location.place () :
如果你不想保留历史,它可以替换路径。它不会给你一个历史,一旦你取代它的路径。
例如: location.replace("http://google.com")
location.replace("http://google.com")