前端之数据结构(一)
说到数据结构,对于前端来说其实接触的很少,就比如说链表,前端是没有的,但是通过Array
以及JavaScript
的内置 api 可以满足链表的几乎所有操作。虽说如此,但是学习好数据结构对与我们的日后开发肯定是大有脾益的。甚至可以发现,很多日常的操作,其实就是一些数据结构的映射。
接下来就让我给大家介绍一下常见的八种数据结构。
数据结构
数据结构:计算机存储、组织数据的方式,就像
锅碗瓢盆。
栈
一个
后进先出
的数据结构。
这就像我们夹蜂窝煤一样,后放的先拿出来。而放入的过程就是入栈,对应JavaScript
中的 push
操作。对应的拿出就是出栈操作啦。对应其中的 pop
。最后放入蜂窝煤的所在的位置就是对应的栈顶(top
)了。
在
JavaScript
中是没有栈的,但是可以用Array
实现栈的所有功能。应用场景,比如函数的调用堆栈。
复制代码
上述代码,就是一个调用栈的过程,它会先调用 fun1
,再调用 fun2
,而 当 fun2
执行完之后,fun1
才算执行完。
最后调用的函数,最先执行完。
栈常用操作:
push、 pop、 stack[stack.length - 1]
队列
一个先进先出的数据结构。
同样在
JavaScript
中也没有队列的,但是可以用Array
实现栈的所有功能。应用场景,比如 JS 异步中的任务队列。
JS 是单线程,无法同时处理异步中的并发任务。
使用任务队列的方法先后处理异步任务。
栈常用操作:
push、 shift、 queue[0]
End!
评论