이번에는 배열에서 중복 항목을 제거하는 JS 방법과 JS를 사용하여 배열에서 중복 항목을 제거하는 주의 사항에 대해 알아보겠습니다.
어레이 중복을 제거하는 방법에는 여러 가지가 있으며, 방법마다 효율성도 다릅니다. 예를 들어 이전 글에서는 JS로 구현한 배열 중복 제거 알고리즘 요약에서 4가지 구현 방법을 요약하고 분석했습니다. 여기서는 효율적인 배열 중복 제거 방법을 소개합니다. JSobject의 특성을 기반으로 배열에서 중복 항목을 제거하는 방법입니다.
1. JS 객체의 특징(이 글에서 사용된 특징): 키는 항상 고유합니다
예: 객체 키 값의 고유성을 설명합니다. 즉, js에서 기존 속성을 다시 할당할 때 새 키
var t={name:'张三',age:20};//定义个js对象 console.log(t.name);//控制台输出:张三 //注意:此时对象t有两个属性:name、age t.name='李四'; console.log(t.name);//控制台输出:李四 //注意:此时对象t依然有两个属性:name、age
를 생성하는 대신 실제로 키를 덮어씁니다. 2. 어레이 중복 제거 단계 분석
두 단계로 나뉩니다:
1. 중복 제거된 배열을 js 객체로 변환하고 반환합니다. 변환 규칙: 배열의 값을 js 객체의 키로 변경한 다음 해당 값을 임의의 값에 할당합니다
; 2. 1단계의 개체를 배열로 복원하고 개체의 키를 배열의 요소로 사용합니다.3. 배열 중복 제거 구현
var arr=[1,2,3,4,5,23,4,2,4,3]; //1.把数组装换成对象,数组的元素作为对象的key,然后返回对象 function toObject(ac_array){ var obj={};//私有的对象 for (var i=0;i<ac_array.length;i++) { obj[ac_array[i]] = true; } console.log(obj);//Object {1: true, 2: true, 3: true, 4: true, 5: true, 23: true} return obj; } //2.把对象的key获取出来作为数组的元素,然后返回数组 function keys(ac_obj){ var arr = []; for(var item in ac_obj){ if(ac_obj.hasOwnProperty(item)){ arr.push(item); } } console.log(arr);//["1", "2", "3", "4", "5", "23"] return arr; } //综合 function uniq(ac_array){ return keys(toObject(ac_array)); } //测试 var uniq_array=uniq(arr); console.log(uniq_array);//["1", "2", "3", "4", "5", "23"]
위 내용은 배열에서 중복 항목을 제거하는 JS 메서드의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!