题解 | #数组过滤#

数组过滤

https://www.nowcoder.com/practice/46d607f9bf64458daa8798339a7336d0

var cups = [
        {
          type: 1,
          price: 100,
          color: "black",
          sales: 60,
          name: "牛客logo马克杯",
        },
        { type: 2, price: 40, color: "blue", sales: 100, name: "无盖星空杯" },
        { type: 4, price: 60, color: "green", sales: 200, name: "老式茶杯" },
        { type: 3, price: 50, color: "green", sales: 600, name: "欧式印花杯" },
      ];
      var select = document.querySelector("select");
      var ul = document.querySelector("ul");
      // 补全代码
      select.onchange = function (e) {
        // 根据e.target.value判断过滤条件,注意额e.target.value是string类型的
        switch (+e.target.value) {
          case 1:
            createList(cups.filter((item) => item.sales < 100));
            break;
          case 2:
            createList(
              cups.filter((item) => item.sales >= 100 && item.sales <= 500)
            );
            break;
          case 3:
            createList(cups.filter((item) => item.sales > 500));
            break;
          default:
            // 还原
            createList(cups);
            break;
        }
      };
      // 渲染数组
      const createList = (array) => {
        // 先清空ul
        ul.innerHTML = "";
        for (const key in array) {
          const li = document.createElement("li");
          li.innerHTML = array[key].name;
          ul.appendChild(li);
        }
      };

全部评论

相关推荐

03-29 18:59
运城学院 Java
程序员小白条:咱们要对自己的简历和学历有清晰的认知,不要动不动就大厂了....都26届了,没实习还想着大厂,唉
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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