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>

效果图:

相关推荐
可乐鸡翅yeah_3 分钟前
hls.js 缓冲区参数 maxBufferLength、maxBufferSize 通俗讲解与业务调参
开发语言·javascript·ios·音视频·safari·m3u8
Wang's Blog5 分钟前
Java框架 SpringCloud 快速入门: 全局过滤器(GlobalFilter)自定义鉴权
java·开发语言·spring cloud
白山编程大哥9 分钟前
C语言篇:可变参数函数
c语言·开发语言
溪语流沙9 分钟前
【Web全栈进阶】PostgreSQL上手:Docker跑库 + 把早报站从SQLite迁过去
前端·docker·postgresql
(Charon)11 分钟前
【C++面试】程序崩溃如何定位:从Segmentation fault到GDB、Core Dump与ASan
开发语言·c++
IT_陈寒15 分钟前
SpringBoot自动配置的坑:你以为的捷径可能是弯路
前端·人工智能·后端
paopaokaka_luck15 分钟前
高校社团管理(AI辅助任务分配、协同过滤算法推荐、ECharts数据可视化、活动参与闭环、校园交流与反馈、器材借还管理)
java·前端·javascript·spring boot·数据分析·echarts
“AI国潮设计-小江”19 分钟前
《Python+SDXL实战:用ControlNet精准控制“英歌舞戚风蛋糕”质感,附批量生成脚本》
开发语言·人工智能·python·prompt·aigc
1024奇点24 分钟前
【仓颉语言入门 · 第26课】
开发语言·ide·开源
jayhgq25 分钟前
新一代Python包与项目管理工具——UV
开发语言·python·uv