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>

效果图:

相关推荐
再吃一根胡萝卜16 小时前
Git 强制推送指南:新手必读的「危险操作」解析
前端
能工智人小辰16 小时前
Java8 Swing实现计算器
开发语言
SccTsAxR16 小时前
[C语言]常见排序算法①
c语言·开发语言·经验分享·笔记·其他·排序算法
诚实可靠王大锤16 小时前
react-native项目通过华为OBS预签名url实现前端直传
前端·react native·华为
Monly2116 小时前
Vue:下拉框多选影响行高
前端·javascript·vue.js
是罐装可乐16 小时前
前端架构知识体系:Source Map 的用法和全面解析
前端·映射·前端架构·代码安全·源码地图·source-map
小桥风满袖16 小时前
极简三分钟ES6 - ES8中对象扩展
前端·javascript
代码的余温17 小时前
Web服务器VS应用服务器:核心差异解析
运维·服务器·前端
一涯17 小时前
日常小常识记录
前端
那一抹阳光多灿烂17 小时前
CSS 编码规范
前端·css