思路
本题的排序功能可以通过数组的sort方法实现,感觉这道题应该是简单题,难度远没有达到中等难度: 需要注意每次升序、降序操作前要将原来的ul标签的子元素全部清空。
function getList() {
// 清空原有的子元素
while(ul.hasChildNodes()) {
ul.removeChild(ul.firstChild)
}
// 创建一个文档片段
const frag = document.createDocumentFragment()
for(let item of cups) {
const liElm = document.createElement('li')
liElm.innerText = `${item.name}`
frag.appendChild(liElm)
}
// 统一插入
ul.appendChild(frag)
}
// 添加点击事件
upbtn.onclick = ()=> {
cups.sort((a,b)=>{
return a.sales-b.sales
})
this.getList()
}
downbtn.onclick = ()=>{
cups.sort((a,b)=>{
return b.sales-a.sales
})
this.getList()
}