// 1.封装队列
function Queue() {
this.items = []
// 2.将元素插入队列
Queue.prototype.enqueue = function (element) {
this.items.push(element)
}
// 3.从队列中删除前端元素
Queue.prototype.dequeue = function () {
return this.items.shift()
}
// 4.查看前端的元素
Queue.prototype.front = function () {
return this.items[0]
}
// 5.查看队列是否为空
Queue.prototype.isEmpty = function () {
return this.items.length == 0
}
// 6.查看队列中的元素的个数
Queue.prototype.size = function () {
return this.items.length
}
// 7.toString方法
Queue.prototype.toString = function () {
var resultQueue = ''
for (let i = 0; i < this.items.length; i++) {
resultQueue += this.items[i] + ','
}
return resultQueue = resultQueue.substring(0, resultQueue.length - 1)
}
}
var queue = new Queue();
queue.enqueue(1)
queue.enqueue(2)
queue.enqueue(3)
queue.enqueue(4)
console.log(`将元素${queue}压入队列`);
queue.dequeue()
queue.dequeue()
console.log(`取出了二个元素,还剩元素${queue}在队列里`);
var a = queue.front()
console.log(`队列前部元素是${a}`);
var b = queue.isEmpty()
console.log(`队列是否为空${b}`);
var c = queue.size()
console.log(`队列中元素的个数是${c}`);
var d = queue.toString()
console.log(`队列中元素用字符串表示是 ${d}`);
image.png