>웹 프론트엔드 >JS 튜토리얼 >js 배열에서 중복을 제거하는 방법은 무엇입니까? js 배열 중복을 제거하는 5가지 방법 요약(코드 포함)

js 배열에서 중복을 제거하는 방법은 무엇입니까? js 배열 중복을 제거하는 5가지 방법 요약(코드 포함)

不言
不言원래의
2018-08-13 10:55:433656검색

JS 배열에서 중복 데이터를 제거하는 방법에는 여러 가지가 있습니다. 다음 기사에서는 특정 참조 값이 있으며 모든 사람에게 도움이 되기를 바랍니다.

JS 메서드 1로 배열 중복 제거 구현: splice() 메서드 및 이중 계층 for 루프 사용(선택 정렬과 다소 유사)

            function norepeat(arr){
                for(var i = 0;i < arr.length-1;i++){
                    for(var j = i+1;j<arr.length;j++){
                        if(arr[i] == arr[j]){
                            arr.splice(j,1);
                            j--;
                        }
                    }
                }
                return arr;
            }

참고: j--를 추가하지 않으면 숫자를 건너뜁니다. 삭제 후 참고: j--가 추가되지 않으면 삭제 후 숫자가 건너뜁니다.

js 배열 중복 제거를 구현하는 방법 - 두 번째 작성 방법(이중 레이어 for 루프): 효율성이 낮음, 추가됨 쓸모없는 루프가 많습니다

  function norepeat(arr){
                var newArr = arr;
                for(var i = newArr.length;i > 0 ; i--){
                    for(var j = 0; j<i ; j++){
                        if(newArr[i] == newArr[j]){
                            newArr.splice(i,1);
                        }
                    }
                }
                return arr;
            }

js 메소드 2를 비교하여 배열 중복 제거를 구현합니다. ES5의 새로운 indexOf() 및 push() 메소드를 사용합니다(매우 간단하고 이해하기 쉽습니다).

   function norepeat(arr){
              var newarr = [];
              for(var i in arr){
                  if(newarr.indexOf(arr[i]) == -1){
                      newarr.push(arr[i]);
                  }
              }
              return newarr;
           }

js 메소드를 사용하여 배열 중복 제거 구현 3: 먼저 정렬을 사용하여 인접한 항목이 동일한지 비교합니다. 동일하면 삭제하세요

   function norepeat(arr) {
            arr.sort(function (a, b) { return a - b; });
            for (var i = 0; i < arr.length; i++) {
                if (arr[i] == arr[i + 1]) {
                    arr.splice(i, 1);
                    i--;
                }
            }
            return arr;
        }

참고:i--를 추가하지 않으면 숫자는 다음과 같습니다. 삭제 후 건너뛰기

js는 배열 중복 제거를 구현합니다. 방법 4: 반복할 수 없는 배열 첨자를 사용합니다. 먼저 매개변수의 값을 배열 첨자로 변환한 다음, 첨자를 다시 값으로 변환합니다(아주 좋은 아이디어)

  function norepeat(arr){
            var newArr = [];
            var arrs = [];
            for(var i=0;i<arr.length;i++){
                var a = arr[i];
                newArr[a] = 1;
            }
            for(var i in newArr){
                arrs[arrs.length] = i;
                console.log(i);
            }
        }

JS 배열 중복 제거 구현 방법 다섯 가지도 실현할 수 있습니다.

  var arr = [6, 1, 1, 2, 1, 2, 1, 1, 3, 1, 1, 1, 4, 15];
        function norepeat(arr) {
            var arrcopy = [];
            for (var i = 0; i < arr.length; i++) {
                var count = 0;
                for (var j in arrcopy) {
                    if (arrcopy[j] != arr[i]) {
                        count++;
                    }
                }
                console.log(arrcopy);
                if (count == arrcopy.length) {
                    arrcopy[arrcopy.length] = arr[i];
                }
            }
            return arrcopy;
        }

관련 권장 사항:

JS 모듈화를 구현하는 방법은 무엇입니까? js 모듈화에 대한 설명

js에서 배열 중복 제거를 달성하는 방법은 무엇입니까? js 배열 중복 제거 방법에 대한 간략한 소개

위 내용은 js 배열에서 중복을 제거하는 방법은 무엇입니까? js 배열 중복을 제거하는 5가지 방법 요약(코드 포함)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.