用JavaScript编写一个简单的数组去重的方法?

假设数组为:

var arr = [1,1,3,4,2,4,7];

一个比较简单的实现就是:
1,先创建一个空数组,用来保存最终的结果。
2,循环原数组中的每一个元素。
3,在对每一个元素进行二次循环,判断是否有与之相同的元素,如果没有,将把这个元素放到新数组中。
4,返回这个新数组。

var arr = [1,1,3,4,2,4,7]//自己定义的数据
Array.prototype.only = function() {
       var arr = this;
         var newArr = [arr[0]];
         for (var i = 0; i < arr.length; i++) {
             var flag = false;
             for (var j = 0; j < newArr.length; j++) {
                 //比较两个数组中的数值是否相等,如果相等则跳出此循环
                 if (arr[i] == newArr[j]) {
                     flag = true;
                     break;
                 }
             }
             if (!flag) {
                 newArr.push(arr[i]);
             }
         }
         return newArr;
     }
console.log(arr.only());
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值