简单的优先队列实现
eg: 医院候诊室, 航班座位等级…..
<script type="text/javascript">
function Queue(){
var items=[];//queue
//数据
function Patient(name,priority){
this.name=name;
this.priority=priority;
}
//队列功能
this.arrangment=function(name,priority){
var patient=new Patient(name,priority);
//obj
//如果队列为空, 直接插入
if (items[0]==null) {
items.push(patient);
}else{
// 查看病人的优先权
if (patient.priority==1) {//VIP
for (var i = 0; i < items.length; i++){
//找到priority=1和=2的位置
if (patient.priority<items[i].priority) {
items.splice(i,0,patient);
break;
}
}
}else{
items.push(patient);
}
}
return items;
}
}//Queue
var queque=new Queue();
console.log(queque.arrangment("krystal",2));
console.log(queque.arrangment("jessica",2));
console.log(queque.arrangment("yoona",1));
console.log(queque.arrangment("ljy",1));
</script>