美文网首页
判断数组中是否具有相同的元素

判断数组中是否具有相同的元素

作者: cs0710 | 来源:发表于2018-12-25 14:28 被阅读15次
判断数组中是否具有相同的元素
  • 方案1,通过给对象添加标识符
// 判断数组是否有重复元素
export const hasRepeatEle = (tempArr) => {
  // 判断数组是否有重复元素
  const obj = {}
  for (let index = 0, len = tempArr.length; index < len; index++) {
    const ele = tempArr[index];
    if (ele) {
      // 重复
      if (obj[ele]) return true // 这里的作用和break一样,不会继续执行剩余的循环
      obj[ele] = true
    }
  }
  // 不重复
  return false
}
  • 方案2,通过对比元素在数组中的位置
  // 不能使用forEach方法,因为forEach不会有返回值,对return无效。使用for坚守啊循环次数,还可以拿到返回结果值
  function hasRepeatEle (arr) {
      for (let index = 0, len = arr.length; index < len; index++) {
          if (index !== arr.indexOf(arr[index])) {
              return true
          }
      }
      return false
  }

相关文章

网友评论

      本文标题:判断数组中是否具有相同的元素

      本文链接:https://www.haomeiwen.com/subject/gkdflqtx.html