题解 | #表格排序#

表格排序

http://www.nowcoder.com/practice/a23d261947194d5d8e2687aa873d96e4

  function sort(type, order) {
    const tdIndex = ["id", "price", "sales"].indexOf(type);     // 获取要排序列的索引
    const container = document.querySelector('#jsList');        // 获取表格行所在容器
    const trArr = Array.from(container.querySelectorAll('tr')); // 将表格行转成真数组
    const sortFn = (a, b) => {
      let td1 = a.querySelectorAll('td')[tdIndex].innerText
      let td2 = b.querySelectorAll('td')[tdIndex].innerText
      return (order === 'asc') ? td1 - td2 : td2 - td1
    }
    // 利用 append() 改变原有表格中表格行的顺序,而非新建元素!
    trArr.sort(sortFn).forEach(tr => container.append(tr))
  }
全部评论

相关推荐

04-18 15:58
已编辑
门头沟学院 设计
kaoyu:这一看就不是计算机的,怎么还有个排斥洗碗?
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务