2023-02-18 19:01:58 来源: 互联网
(资料图)
window.location.replace(…)比使用window.location.href更好,因为replace()不会在会话历史中保留起始页面,这意味着用户不会陷入无休止的返回按钮的惨剧中。
Location 接口的 href 属性是一个字符串化转换器(stringifier), 返回一个包含了完整 URL 的 USVString 值, 且允许 href 的更新.
string = object.href;object.href = string;
window.location.href = "";
Location.replace() 方法以给定的URL来替换当前的资源。
与assign() 方法 不同的是,调用 replace() 方法后,当前页面不会保存到会话历史中(session History),这样,用户点击回退按钮时,将不会再跳转到该页面。
因违反安全规则导致的赋值失败,浏览器将会抛出类型为 SECURITY_ERROR 的 DOMException 异常。
当调用该方法的脚本所属的源与拥有 Location 对象所属源不同时,通常情况会发生这种异常,此时通常该脚本是存在不同的域下。
如果 URL 无效,浏览器也会抛出 SYNTAX_ERROR 类型的 DOMException 异常。
object.replace(url);
window.location.replace("");