> 웹 프론트엔드 > JS 튜토리얼 > js 배열 중복 제거 방법 요약

js 배열 중복 제거 방법 요약

一个新手
풀어 주다: 2017-09-21 09:51:10
원래의
2006명이 탐색했습니다.


방법 1:

먼저 배열을 정렬합니다. 정렬 후 이전 요소와 요소를 비교하고 동일한 요소를 제거합니다. 이 방법은 sort() 메서드와 Slice()

var arr = [&#39;a&#39;, &#39;b&#39;, &#39;c&#39;, &#39;d&#39;, &#39;e&#39;, &#39;f&#39;, &#39;g&#39;, &#39;h&#39;, &#39;j&#39;, &#39;a&#39;, &#39;b&#39;, &#39;c&#39;, &#39;d&#39;, &#39;e&#39;, &#39;f&#39;, &#39;g&#39;, &#39;h&#39;, &#39;j&#39;];//对数组先进行排序arr.sort();            for(var i = 0; i < arr.length; i++) {                //用当前的元素与他的前一个元素进行对比
                if(arr[i] == arr[i - 1]) {                    //如果相同的话,就删除掉第i个元素
                    arr.splice(i, 1);
                }
            }
            console.log(arr);
로그인 후 복사

방법 2를 사용합니다. :

배열을 탐색하고, 새 배열을 정의하고, indexOf를 사용하여 새 배열에 존재하는지 확인하고, 존재하지 않으면 새 배열로 푸시하고, 마지막으로 새 배열을 반환합니다.

var arr = [&#39;a&#39;, &#39;b&#39;, &#39;c&#39;, &#39;d&#39;, &#39;e&#39;, &#39;f&#39;, &#39;g&#39;, &#39;h&#39;, &#39;j&#39;, &#39;a&#39;, &#39;b&#39;, &#39;c&#39;, &#39;d&#39;, &#39;e&#39;, &#39;f&#39;, &#39;g&#39;, &#39;h&#39;, &#39;j&#39;];function delArr(array){
                var newArr=[];//新建一个新数组
                //遍历参数数组array
                for(var i=0;i<array.length;i++){                    //判断新数组是否有这个元素值,没有的话,就把arr[i]给push到新数组newArr中
                    if(newArr.indexOf(array[i])===-1){
                        newArr.push(arr[i]);
                    }
                }                return newArr;
            }
            console.log(delArr(arr));
로그인 후 복사

방법 3:

사용 객체 키-값 쌍 방법: 새로운 js 객체와 새로운 배열을 생성합니다. 들어오는 배열을 순회할 때 값이 js 객체의 키인지 확인하고, 그렇지 않은 경우 객체에 키를 추가합니다. 새로운 배열.

참고: js 객체 키인지 확인할 때 "toString()"은 수신 키에서 자동으로 실행됩니다. 예를 들어 a[1], a["1" ] . 위의 문제를 해결하려면 여전히 "indexOf"를 호출해야 합니다.

rreee

위 내용은 js 배열 중복 제거 방법 요약의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿