首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Javascript:如何找到第一个重复值并返回其索引?

Javascript:如何找到第一个重复值并返回其索引?
EN

Stack Overflow用户
提问于 2016-09-06 10:02:35
回答 9查看 13.6K关注 0票数 2

我必须在数组中找到第一个重复值,然后在变量firstIndex中返回它的索引。这必须用for循环来完成,在找到第一个重复之后应该停止。我知道这可能很简单但我被困住了。到目前为止,我有这个,但它似乎不起作用:

代码语言:javascript
运行
复制
var numbers4 = [5, 2, 3, 4, 2, 6, 7, 1, 2, 3];
var firstIndex = "";
for (var a = 0; a < numbers4.length; a++) {
    for (var b = a+1; b < numbers4.length; b++) {
        if (numbers4[a] === numbers4[b])
            firstIndex = numbers4.indexOf(numbers4[a]);
            break;
    }
}
console.log(firstIndex);

控制台打印出1,这很好,因为2是第一次复制,但是当我在数组中更改数字时,循环不工作。你能告诉我这里有什么可以改变吗?

提前感谢!

EN

Stack Overflow用户

发布于 2018-04-21 18:26:50

这个问题指出数组中的第一个dupe必须和它的索引一起找到。因此,我返回一个对象,其中i属性是index,e属性是第一个重复的e功能本身。执行此任务的一种方法是

代码语言:javascript
运行
复制
var numbers4 = [5, 2, 3, 4, 2, 6, 7, 1, 2, 3],
    headDupe = (a,r={}) => (r.e = a.find((n,i) => (r.i = a.indexOf(n), r.i < i)),r);

console.log(headDupe(numbers4));

票数 0
EN
查看全部 9 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39346182

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档