深入理解栈和队列(js的问题)

简介: 深入理解栈和队列(js的问题)

• 栈: 后进先出 LIFO (last in first out)

• 队列: 先进先出 FIFO (first in first out)

• 栈和堆:数据存储

• 栈和队列:数据访问顺序

js数组 具备了 栈 + 队列

push

pop

unshift

shift

var list = [1, 2, 3];
 
// 队尾入栈
list.push(4);
console.log(list); // [ 1, 2, 3, 4 ]
 
var val1 = list.pop();
console.log(list); // [ 1, 2, 3 ]
console.log(val1);  // 4
 
// 队首入栈
list.unshift(0);
console.log(list);  // [0, 1, 2, 3]
 
var val2 = list.shift();
console.log(list);  // [1, 2, 3]
console.log(val2);  // 0
  • 结尾出入栈,不影响原有数据位置索引,效率高
  • 开头出入栈,会影响原有的数据位置索引,效率低


相关文章
|
7月前
|
消息中间件 Web App开发 JavaScript
Node.js【简介、安装、运行 Node.js 脚本、事件循环、ES6 作业队列、Buffer(缓冲区)、Stream(流)】(一)-全面详解(学习总结---从入门到深化)
Node.js【简介、安装、运行 Node.js 脚本、事件循环、ES6 作业队列、Buffer(缓冲区)、Stream(流)】(一)-全面详解(学习总结---从入门到深化)
308 0
|
7月前
|
JavaScript 前端开发 API
Node.js【简介、安装、运行 Node.js 脚本、事件循环、ES6 作业队列、Buffer(缓冲区)、Stream(流)】(一)-全面详解(学习总结---从入门到深化)(下)
Node.js【简介、安装、运行 Node.js 脚本、事件循环、ES6 作业队列、Buffer(缓冲区)、Stream(流)】(一)-全面详解(学习总结---从入门到深化)
102 0
|
4月前
|
JavaScript 前端开发
js事件队列
js事件队列
146 55
|
3月前
|
JavaScript 前端开发 API
详解队列在前端的应用,深剖JS中的事件循环Eventloop,再了解微任务和宏任务
该文章详细讲解了队列数据结构在前端开发中的应用,并深入探讨了JavaScript的事件循环机制,区分了宏任务和微任务的执行顺序及其对前端性能的影响。
|
2月前
|
存储 JavaScript 前端开发
js事件队列
【10月更文挑战第15天】
55 6
|
3月前
|
JavaScript 前端开发
js事件队列
js事件队列
31 0
|
4月前
|
JavaScript 前端开发
JavaScript——一个简单的队列Demo
JavaScript——一个简单的队列Demo
47 4
|
5月前
|
JavaScript
数据结构(用 JS 实现栈和队列【三种方式】)
数据结构(用 JS 实现栈和队列【三种方式】)
74 0
|
7月前
|
前端开发 JavaScript 算法
JavaScript 中实现常见数据结构:栈、队列与树
JavaScript 中实现常见数据结构:栈、队列与树
|
JavaScript 前端开发
javascript的队列,优先队列,循环队列
按书上的来弄的。慢慢理解了。 function Queue() { var items = []; this.enqueue = function(element){ items.
948 0