JavaScript實現佇列(程式碼+測試)
程式碼
<script>
function Queue() {
this.dataStore = [];
}
Queue.prototype.enqueue = function (data) {
this.dataStore.push(data)
}
Queue.prototype.dequeue = function () {
if (!this.empty()) {
return this.dataStore.shift();
} else {
console.log('佇列為空,無法出隊');
}
}
Queue.prototype.front = function () {
if (!this.empty()) {
return this.dataStore[0];
} else {
console.log('佇列為空');
}
}
Queue.prototype.back = function () {
if (!this.empty()) {
return this.dataStore[this.dataStore.length - 1];
} else {
console.log('佇列為空');
}
}
Queue.prototype.toString = function () {
let str = '';
for (let i = 0; i < this.dataStore.length; i++) {
str += this.dataStore[i] + ' ';
}
return str;
}
Queue.prototype.empty = function () {
if (this.dataStore.length == 0) {
return true;
} else {
return false;
}
}
</script>
測試
<script>
let queue = new Queue();
for (let i = 0; i < 5; i++) {
queue.enqueue(i);
}
console.log(queue.toString());
for (let i = 0; i < 5; i++) {
console.log('佇列頭為');
console.log(queue.front());
console.log('佇列尾為:');
console.log(queue.back());
queue.dequeue(i);
}
queue.dequeue();
queue.front();
queue.back();
</script>
相關文章
- javascript實現佇列JavaScript佇列
- 佇列 優先順序佇列 python 程式碼實現佇列Python
- 【資料結構】佇列(順序佇列、鏈佇列)的JAVA程式碼實現資料結構佇列Java
- 用JavaScript實現棧與佇列JavaScript佇列
- JavaScript 非同步佇列實現及擴充JavaScript非同步佇列
- JavaScript 中如何實現函式佇列?(一)JavaScript函式佇列
- 通過佇列實現棧OR通過棧實現佇列佇列
- 建立測試佇列,傳送接受測試訊息佇列
- 優先佇列的效能測試佇列
- 佇列的一種實現:迴圈佇列佇列
- 9. 題目:對佇列實現棧&用棧實現佇列佇列
- AMQP訊息佇列的測試方法MQ佇列
- 佇列(Queue)-c實現佇列
- 用 Rust 實現佇列Rust佇列
- 用佇列實現棧佇列
- 用棧實現佇列佇列
- Python佇列的三種佇列實現方法Python佇列
- Kafka 延時佇列&重試佇列Kafka佇列
- 編寫可測試的 JavaScript 程式碼JavaScript
- Rust 程式設計,實現簡單的佇列Rust程式設計佇列
- javascript實現複製一個陣列程式碼例項JavaScript陣列
- 鏈式佇列—用連結串列來實現佇列佇列
- Redis實現任務佇列、優先順序佇列Redis佇列
- 多執行緒程式設計-分析阻塞佇列的原始碼實現執行緒程式設計佇列原始碼
- 百行程式碼實現基於Redis的可靠延遲佇列行程Redis佇列
- RabbitMQ釋出訂閱實戰-實現延時重試佇列MQ佇列
- phpunit測試成功phpunit測試實踐程式碼PHP
- RabbitMQ實現延遲佇列MQ佇列
- RabbitMQ 實現延遲佇列MQ佇列
- Redis實現訊息佇列Redis佇列
- 兩個棧實現佇列佇列
- python 程式碼實現查詢功能介面測試Python
- 無需編寫程式碼,API業務流程測試,零程式碼實現API
- javascript實現的合併兩個陣列程式碼例項JavaScript陣列
- Python 30 行程式碼實現小型多執行緒任務佇列Python行程執行緒佇列
- 靜態佇列,迴圈陣列實現佇列陣列
- JavaScript 實現sprintf 功能程式碼JavaScript
- javascript測試程式碼的執行時間程式碼例項JavaScript