队列
- 一个先进先出的数据结构
const queue = [];stack.push(1);stack.push(2);const item1 = stack.shift();const item2 = stack.shift();
什么场景下使用队列
需要先进先出的场景
- 食堂排队打饭
- js是单线程,无法同时处理异步中的并发任务
- 使用任务队列先后处理异步任务
- 计算最近请求次数
计算最近请求次数
let time = [null,[1],[200],[3001],[3002]];let recentCounter = function(){this.q = []}recentCounter.prototype.ping = function(t){this.q.push(t);while(this.q[0] < t - 3000){this.q.shift()}return this.q.length}
JS异步中的任务队列
![]()
