菜单 学习猿地 - LMONKEY

VIP

开通学习猿地VIP

尊享10项VIP特权 持续新增

知识通关挑战

打卡带练!告别无效练习

接私单赚外块

VIP优先接,累计金额超百万

学习猿地私房课免费学

大厂实战课仅对VIP开放

你的一对一导师

每月可免费咨询大牛30次

领取更多软件工程师实用特权

入驻
151
0

数组去重

原创
05/13 14:22
阅读数 87701

方法一:原数组与得到的新数组比较,得出不重复的新数组

 1  function fn1(arr, newArr) {
 2         newArr[0] = arr[0] //赋值新数组一个初始值
 3         for (let i = 0; i < arr.length; i++) {
 4             for (let k = 0; k < newArr.length; k++) {
 5                 if (arr[i] == newArr[k]) {
 6                     break;
 7                 }
 8                 if (k == newArr.length - 1) {
 9                     newArr.push(arr[i])
10                 }
11             }
12         }
13         return newArr
14     }
15 var arr = ['a', 'b', 3, 4, 'a', 4, 20, 8, 'c', 'c'];  
16 console.log(fn1(arr, newArr))

控制台打印结果

 

方法二:利用splice() 在原数组的基础上删除重复值

function fn2(arr) {
        for (let i = 0; i < arr.length; i++) {
            for (let k = i + 1; k < arr.length; k++) {
                if (arr[i] == arr[k]) {
                    arr.splice(k, 1);
                   
                }
            }
        }
        return arr;
    }

输出

 

发表评论

0/200
151 点赞
0 评论
收藏