JS去重案例

JS去重案例,第1张

今天日记:
学到JS要做数组去重,将旧的数组遍历,查询新数组的索引是不是有元素,用等于-1来判断此元素不在旧数组,于是写代码如下。



 function a(arr) {
            var n = [];
            for (var k in arr) {
                if (n.indexOf(k) == -1) {
                    n.push(k);
                }
            }
            return n;
        }
        console.log(a([1, 4, 2, 3, 2, 5, 3, 4, 3]));
但是结果出来,数组却是 [0,1,2,3,4,5,6,7,8]
然后思考想起来  for (var k in arr) 由于之前python的思维,理所应当是直接遍历元素。


对象遍历用这种方法,遍历输出的是属性,如果是属性值便需要写成obj[k]。



以此类推,JS中数组这种方法遍历是不是遍历的也是索引值?那么更改为:
 function a(arr) {
            var n = [];
            for (var k in arr) {
                if (n.indexOf(arr[k]) == -1) {
                    n.push(arr[k]);
                }
            }
            return n;
        }
        console.log(a([1, 4, 2, 3, 2, 5, 3, 4, 3]));
结果为[1,4,2,3,5] 成功去重 且比另一种for (var i=0;i

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/589742.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-13
下一篇 2022-04-13

发表评论

登录后才能评论

评论列表(0条)

保存