JavaScript 返回到上一页的三种常用方法
在网页开发中,实现'返回上一页'功能非常常见。JavaScript 提供了多种方式来实现,下面介绍三种最常用且可靠的方法,并附带优缺点对比和使用场景。
方法一:history.back()(最常用,推荐)
// 直接返回上一页,等同于点击浏览器'后退'按钮
history.back();
// 或者 history.go(-1);
说明:
history.back()和history.go(-1)效果完全相同。- 会触发浏览器的历史记录后退,页面状态(如表单填写、滚动位置)通常能保持(取决于浏览器实现)。
示例(按钮点击返回):
<button onclick="history.back()">返回上一页</button>
优点:
- 简单、直观。
- 用户体验最好,模拟真实后退行为。
- 支持页面状态恢复。
缺点:
- 如果当前页是历史记录的第一页,会无效(不会跳转)。
方法二:history.go(-1)(等同于 back)
history.go(-1); // 后退一步
// history.go(-2); // 后退两步
// history.go(1); // 前进一步
说明:
history.go(n)中的 n 是整数,正数前进,负数后退。- 与
history.back()完全等价,只是写法不同。
使用场景:
- 需要动态控制后退步数时更灵活。
方法三:window.location.href = document.referrer(根据来源页跳转)
if (document.referrer) {
window.location.href = document.referrer;
} else {
.. = ;
}

