gpt4 book ai didi

javascript - 如何在 JavaScript 中使用 indexOf 和 filter()

转载 作者:行者123 更新时间:2023-12-04 00:01:47 24 4
gpt4 key购买 nike

这是我作为这个问题的答案找到的代码:Write a JavaScript program to remove duplicate items from an array (ignore casesensitive)。

var arr1=[3, 'a', 'a', 'a', 2, 3, 'a', 3, 'a', 2, 4, 9, 3, 'A'];

var uniqueArray = arr1.filter(function(elem,i,rep){
return i == rep.indexOf(elem);
})
console.log(uniqueArray);

我知道 filter() 做了什么,并且 indexOf 用于查找元素第一次出现的索引,但我不明白这一行是如何:
i == rep.indexOf(elem);

仅将唯一元素引入 uniqueArray。

最佳答案

var arr1 = [3, 'a', 'a', 'a', 2, 3, 'a', 3, 'a', 2, 4, 9, 3, 'A'];

var uniqueArray = arr1.filter(function(elem,i,rep){
return i == rep.indexOf(elem);
});

console.log(uniqueArray);


这里 elem 将包含数组的每个元素, i 将是当前 elem 的索引, rep 将包含整个数组
现在 rep.indexOf(elem);总是会给出元素第一次出现的索引 Array.prototype.filter() 的工作方式是,如果你返回 true,它不会过滤它,但如果你返回 false,它会过滤掉它,所以除了每个元素第一次出现被过滤掉

关于javascript - 如何在 JavaScript 中使用 indexOf 和 filter(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45522616/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com