前端歌谣的刷题之路-第八十一题-数组排序

前言

我是歌谣 我有个兄弟 巅峰的时候排名c站总榜19 叫前端小歌谣 曾经我花了三年的时间创作了他 现在我要用五年的时间超越他 今天又是接近兄弟的一天人生难免坎坷 大不了从头再来 歌谣的意志是永恒的 放弃很容易 但是坚持一定很酷 本题目源自于牛客网 微信公众号前端小歌谣

题目

请补全JavaScript代码,根据预设代码中的数组,实现以下功能:
1. 列表只展示数组中的name属性
2. 实现点击"销量升序"按钮,列表内容按照销量升序重新渲染
3. 实现点击"销量降序"按钮,列表内容按照销量降序重新渲染
注意:
1. 必须使用DOM0级标准事件(onclick)

 

 核心代码

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>数组排序</title>
</head>
<body>
  <button class='up' onclick="changeUp()">销量升序</button>
  <button class='down' onclick="changeDown()">销量降序</button>
  <ul></ul>
<!-- 请补全JavaScript代码,根据预设代码中的数组,实现以下功能:
1. 列表只展示数组中的name属性
2. 实现点击"销量升序"按钮,列表内容按照销量升序重新渲染
3. 实现点击"销量降序"按钮,列表内容按照销量降序重新渲染
注意:
1. 必须使用DOM0级标准事件(onclick) -->
  <script>
    
      var cups = [
          { type: 1, price: 100, color: 'black', sales: 3000, name: '牛客logo马克杯' },
          { type: 2, price: 40, color: 'blue', sales: 1000, name: '无盖星空杯' },
          { type: 4, price: 60, color: 'green', sales: 200, name: '老式茶杯' },
          { type: 3, price: 50, color: 'green', sales: 600, name: '欧式印花杯' }
      ]
      var ul = document.querySelector('ul');
      var upbtn = document.querySelector('.up');
      var downbtn = document.querySelector('.down');
      // 补全代码
      upbtn.onclick = function(){
                ul.innerHTML = ''
                cups.sort(function(a,b){
                    return a.sales - b.sales;
                })
               
                for(let i =0;i <cups.length;i++){
                    let li = document.createElement('li');
                    li.innerHTML  = `${cups[i].name}`
                    ul.appendChild(li)
                }
            }
            downbtn.onclick = function(){
                ul.innerHTML = '';
                cups.sort(function(a,b){
                    return b.sales - a.sales;
                })
               
                for(let i =0;i <cups.length;i++){
                    let li = document.createElement('li');
                    li.innerHTML  = `${cups[i].name}`
                    ul.appendChild(li)
                }
            }
      
  </script>
</body>
</html>

总结

利用sort进行排序 根据对应的场景赋值不同的值 nice

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

前端大歌谣

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值