js实现数组中去掉重复的0或者去掉全部0

代码:

javascript 复制代码
<!DOCTYPE html>
<html lang="zh-CN">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <script>
      var arr3 = [10, 0, 20, 0, 30, 0, 40, 0, 50];
      console.log("原数组为:");
      console.log(arr3);
      
      // 开关
      let derail = true;
      let newarr = [];
      let k = 0;
      //保留一个0,并排序
      arr3.sort(function (a, b) {
        return a - b;
      });
      for (let i = 0; i < arr3.length; i++) {
        for (let j = 0; j < newarr.length; j++) {
          if (arr3[i] === newarr[j]) {
            derail = false;
            break;
          } else {
            derail = true;
          }
        }
        if (derail === true) {
          newarr[k] = arr3[i];
          k++;
        }
      }
      console.log("去掉重复的0:");

      console.log(newarr);

      // 不保留0,并排序
      arr3.sort(function (a, b) {
        return a - b;
      });
      for (var i = 0; i < arr3.length; i++) {
        if (arr3[i] == 0) {
          arr3.shift();
          i--;
        }
      }
      console.log("去掉全部0:");

      console.log(arr3);
    </script>
  </body>
</html>

效果图:

相关推荐
程序员黑豆4 小时前
Java 注释详解:单行、多行与文档注释的完整指南
java·前端·ai编程
剪刀石头布啊4 小时前
antd中可编辑表格中巧用useWatch实现联动高性能效果,以及定制延伸学习
前端
油丶酸萝卜别吃5 小时前
前端转全栈学习路线
前端·学习
浮生望5 小时前
前端路由进阶:History API原理与手写HistoryRouter
前端
wuyk5555 小时前
第2章:六步换相原理全解+STM32工程实战
c语言·开发语言·stm32·单片机·嵌入式硬件
hey_sml5 小时前
JAVA每日一学---CompletableFuture中thenApply与thenCompose区别详解
java·开发语言
陆枫Larry5 小时前
JavaScript 中的竞态是什么,为啥会有竟态?
前端
萧瑟余晖7 小时前
Java深入解析篇十七之SpringCloud
java·开发语言
上海安当技术8 小时前
半天接入:USBKey RESTful API + C 动态库,Web 和 C/S 两套集成路径实战
前端·后端·restful·集成·usbkey
ttod_qzstudio8 小时前
Java 常用语法极简通关(五):类与对象——字段、方法、构造器、this 与 static
java·开发语言·python