首页 > 试题广场 >

Chrome浏览器打开A页面,点A页面中的超链接跳到B页面,

[单选题]
Chrome浏览器打开A页面,点A页面中的超链接跳到B页面,又点了B页面的超链接跳到C页面,最后在C页面点浏览器的后退返回到上一页,问此时history.length的值为多少?
  • 1
  • 2
  • 3
  • 4
history.length 记录的是历史记录栈的总条目数,而非当前所在页面的层级。以下用流程拆解核心逻辑:

1. 初始流程:页面跳转时历史栈的变化

  • 打开 A 页:历史栈 [A] → length = 1。
  • 跳转到 B 页:历史栈 [A, B] → length = 2。
  • 跳转到 C 页:历史栈 [A, B, C] → length = 3。

2. 回退操作:仅改变 “当前指针”,不改变栈长度

  • 从 C 回退到 B:历史栈还是 [A, B, C],只是 “当前指针” 从 C 移到 B。
  • history.length 统计的是栈的总条目数(始终是 3),而非当前指针位置。

关键类比:历史栈像数组,回退像改变下标

把历史栈想象成数组 [A, B, C]:

  • length 是数组长度(3),不会因下标(当前页)改变而变化。
  • 回退操作只改变 “当前下标”(从 2 到 1),但数组长度(3)保持不变。

结论

history.length 反映的是历史记录的总数量,回退操作不新增 / 删除记录,因此长度始终为 3。
发表于 2025-06-19 08:47:41 回复(0)