任务要求:
限制输入的数字在10-100
队列元素数量最多限制为60个,当超过60个时,添加元素时alert出提示
队列展现方式变化如图,直接用高度表示数字大小
实现一个简单的排序功能,如冒泡排序(不限制具体算法),用可视化的方法表达出来。
1.通过传递不同参数合并相似功能的函数
本例中,刚开始将左侧出和右侧出两个按钮的功能分成了两个函数:
function leftOut() {
var node=myqueue.removeChild(myqueue.firstChild);//移出左侧第一个节点
alert("已删除"+node.innerText);
spanNum--;
}
function rightOut() {
var node=myqueue.removeChild(myqueue.lastChild);//移出右侧最后一个节点
alert("已删除"+node.innerText);
spanNum--;
}
实际上,这两个函数体几乎一样,可通过传递不同参数合并为一个函数:
function spanOut(child) {
if(myqueue[child]){
var node=myqueue.removeChild(myqueue[child]);//移出 节点
alert("已删除"+parseInt(node.style.height));
spanNum--;
}
}
而在具体的button事件中,可以这样传递参数:
<button onclick="spanOut('firstChild')">左侧出</button>
<button onclick="spanOut('lastChild')">右侧出</button>
这样使代码更加简洁,可复用性更好。