快捷搜索:  汽车  科技

关闭浏览器会关闭固定页面吗(不小心关掉浏览器页面竟然有这么大的后果)

关闭浏览器会关闭固定页面吗(不小心关掉浏览器页面竟然有这么大的后果)大多数人和我一样,直接选择退回。(2)使用浏览器的"回退"功能。浏览器会先回退到页面 B,而后再回退到页面 A。这个时候你会选择怎么办?

网上冲浪的疑惑


我们经常使用浏览器在各种网站上查找信息。假设先浏览的页面 A,然后关闭了页面 A 跳转到页面 B,随后又关闭页面 B 跳转到了页面 C……而此时,我们如果想重新回到页面 A,有两个选择:

(1)重新搜索找到页面 A;

(2)使用浏览器的"回退"功能。浏览器会先回退到页面 B,而后再回退到页面 A。


这个时候你会选择怎么办?


大多数人和我一样,直接选择退回

原因嘛……太懒,能少打一个字就少打一个字,嘿嘿~


但是,浏览器 "回退" 功能的实现,作为程序员的你有没有想过是为什么呢?

其实,这一切,都和“栈”有关


关于“栈”


学习编程的时候,经常会看到stack这个词,它的中文名字叫做"栈"。

理解这个概念,对于理解程序的运行至关重要。

stack的演变

Stack在最开始的时候是用来描述整齐码放在一起的东西的,所以它的初始意义是“一摞,一堆”。在计算机技术普及之后,码放的东西从实体的砖头、书本,变成了码放在电脑硬盘中需要计算机处理的数据。因此,stack在计算机科学的领域里就变成了描述数据的存放方式。

关闭浏览器会关闭固定页面吗(不小心关掉浏览器页面竟然有这么大的后果)(1)

图1 栈存储数据的方式


什么是“后进先出”?


在stack这种数据结构中,数据像积木那样一层层堆起来,后面加入的数据就放在最上层。先进入的数据被压入栈底,最后的数据在栈顶,需要读数据的时候从栈顶开始弹出数据(最后一个数据被第一个读出来),这就叫做"后进先出"。


那么,回到文章开头的那个问题,“栈”在我们日常生活中到底有什么用呢?

浏览器 "回退" 功能的实现,底层使用的就是栈存储结构。当你关闭页面 A 时,浏览器会将页面 A 入栈;同样,当你关闭页面 B 时,浏览器也会将 B入栈。因此,当你执行回退操作时,才会首先看到的是页面 B,然后是页面 A,这是栈中数据依次出栈的效果。

来源公众号:山西IT优就业

猜您喜欢: