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>

效果图:

相关推荐
柠檬丶抒情1 分钟前
Rust no_std 裸机移植:9 条避坑与实战手册
开发语言·mongodb·rust
Amumu121389 分钟前
React扩展(一)
前端·javascript·react.js
cypking11 分钟前
三、前端规范化 项目代码规范
前端·代码规范
FAFU_kyp32 分钟前
Rust 模式匹配:match 与 if let 详解
开发语言·后端·rust
xkxnq36 分钟前
第二阶段:Vue 组件化开发(第 28天)
前端·javascript·vue.js
摘星编程44 分钟前
React Native for OpenHarmony 实战:RTL 从右到左布局详解
javascript·react native·react.js
Yvonne爱编码1 小时前
前端工程化进阶:从搭建完整项目脚手架到性能优化【技术类】
前端·状态模式
cypking1 小时前
二、前端规范化 遇到的问题及解决方案
前端
星火开发设计1 小时前
C++ 运算符全解析:算术、关系、逻辑与位运算
java·开发语言·c++·学习·位运算·知识·操作符
小范馆1 小时前
STM32F03C8T6通过AT指令获取天气API
前端·javascript·stm32