本文實(shí)例講述了JS實(shí)現(xiàn)隊(duì)列的先進(jìn)先出功能。分享給大家供大家參考,具體如下:
/** * [Queue] * @param {[Int]} size [隊(duì)列大小] */function Queue(size) { var list = []; //向隊(duì)列中添加數(shù)據(jù) this.push = function(data) { if (data==null) { return false; } //如果傳遞了size參數(shù)就設(shè)置了隊(duì)列的大小 if (size != null && !isNaN(size)) { if (list.length == size) { this.pop(); } } list.unshift(data); return true; } //從隊(duì)列中取出數(shù)據(jù) this.pop = function() { return list.pop(); } //返回隊(duì)列的大小 this.size = function() { return list.length; } //返回隊(duì)列的內(nèi)容 this.quere = function() { return list; }}//初始化沒(méi)有參數(shù)的隊(duì)列var queue = new Queue();for (var i = 1; i <= 5; i++) { queue.push(i);}console.log(queue.quere());console.log(queue.pop()); //從隊(duì)列中取出一個(gè)console.log(queue.quere());var queue = new Queue(3);for (var i = 1; i <= 5; i++) { queue.push(i);}console.log(queue.quere());console.log(queue.pop());console.log(queue.quere());結(jié)果:
[ 5, 4, 3, 2, 1 ]1[ 5, 4, 3, 2 ][ 5, 4, 3 ]3[ 5, 4 ]
更多關(guān)于JavaScript相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《JavaScript數(shù)據(jù)結(jié)構(gòu)與算法技巧總結(jié)》、《JavaScript數(shù)學(xué)運(yùn)算用法總結(jié)》、《JavaScript排序算法總結(jié)》、《JavaScript遍歷算法與技巧總結(jié)》、《JavaScript查找算法技巧總結(jié)》及《JavaScript錯(cuò)誤與調(diào)試技巧總結(jié)》
希望本文所述對(duì)大家JavaScript程序設(shè)計(jì)有所幫助。
新聞熱點(diǎn)
疑難解答
圖片精選