在js的数组中找出不重复的一个数

简介: 今天看到一个一个问题,怎样在一堆数组中 找到一个不重复的数值

 今天看到一个一个问题,怎样在一堆数组中 找到一个不重复的数值

我开始的想法是,写双重for循环,拿值一个个的去比对,和冒泡排序的思路是一样的,后面偶然间看到一个方法,思路很清晰,代码很简洁,现在是记录一下

functionfindLonelyDog(arr) {
for (leti=0; i<arr.length ; i++) { //正常for循环console.log(i,888)
if ((arr.indexOf(arr[i])) ==arr.lastIndexOf(arr[i])) {  //1,关键代码在于这,arr.indexof(arr[i])这段代码是用indexof的犯法,方法里面传入一个值,会检索这个值在数组的下标值,但是这里有一个问题,只会返回检索到第一个值的下标result=arr[i];                                    // 2,lastIndexOf(arr[i]) 这个方法和indexof的方法是一样的,只不过检索的方向不一样,indexof是从下标0开始,而lastindexof是从最后一个下标开始的。// 3,关键来了,当我从正序检索这个数据的下标,和我倒叙检索这个数据的下标,当正,倒序的下标相等了,是不是就能认为这个数是惟一的??//不是唯一不可能下标一样哈break;//终止 跳出循环                }
            }
returnresult;
        }

image.gif


目录
打赏
0
0
0
0
5
分享
相关文章
JavaScript中通过array.map()实现数据转换、创建派生数组、异步数据流处理、复杂API请求、DOM操作、搜索和过滤等,array.map()的使用详解(附实际应用代码)
array.map()可以用来数据转换、创建派生数组、应用函数、链式调用、异步数据流处理、复杂API请求梳理、提供DOM操作、用来搜索和过滤等,比for好用太多了,主要是写法简单,并且非常直观,并且能提升代码的可读性,也就提升了Long Term代码的可维护性。 只有锻炼思维才能可持续地解决问题,只有思维才是真正值得学习和分享的核心要素。如果这篇博客能给您带来一点帮助,麻烦您点个赞支持一下,还可以收藏起来以备不时之需,有疑问和错误欢迎在评论区指出~
JavaScript中通过array.filter()实现数组的数据筛选、数据清洗和链式调用,JS中数组过滤器的使用详解(附实际应用代码)
用array.filter()来实现数据筛选、数据清洗和链式调用,相对于for循环更加清晰,语义化强,能显著提升代码的可读性和可维护性。博客不应该只有代码和解决方案,重点应该在于给出解决方案的同时分享思维模式,只有思维才能可持续地解决问题,只有思维才是真正值得学习和分享的核心要素。如果这篇博客能给您带来一点帮助,麻烦您点个赞支持一下,还可以收藏起来以备不时之需,有疑问和错误欢迎在评论区指出~
🛠️ JavaScript数组操作指南:20个精通必备技巧🚀
本文详细介绍了 JavaScript 中的 20 个高效数组操作技巧,涵盖了从基本的添加、移除元素,到数组转换和去重等高级操作。强调了不可变性的重要性,提供了清晰的代码示例,帮助开发者编写更整洁和高效的代码。无论是新手还是经验丰富的开发者,这些技巧都将显著提升您的编码能力,使您在项目中更具竞争力。
97 2
|
9月前
|
js删除数组中已知下标的元素
js删除数组中已知下标的元素
108 4
【javaScript数组,函数】的基础知识点
【javaScript数组,函数】的基础知识点
81 5
JavaScript中数组、对象等循环遍历的常用方法介绍(二)
JavaScript中数组、对象等循环遍历的常用方法介绍(二)
127 1
探索JavaScript数组:基础
探索JavaScript数组:基础
58 3
JS 删除数组元素( 5种方法 )
JS 删除数组元素( 5种方法 )
225 1
如何在JS中声明一个数组
如何在JS中声明一个数组
129 0

热门文章

最新文章

AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等

登录插画

登录以查看您的控制台资源

管理云资源
状态一览
快捷访问