이번에는 JS를 사용하여 재계산을 위해 여러 배열을 병합하는 방법과 JS를 사용하여 재계산을 위해 여러 배열을 병합할 때 어떤 참고사항이 있는지 보여드리겠습니다. 다음은 실제 사례입니다.
이 문서의 예에서는 JS에서 구현된 여러 배열을 병합하기 위한 중복 제거 알고리즘을 설명합니다. 참고를 위해 모든 사람과 공유하세요. 세부 사항은 다음과 같습니다.
var arr1 = ['a','b']; var arr2 = ['a','c','d']; var arr3 = [1,'d',undefined,true,null]; //合并两个数组,去重 var concat_ = function(arr1,arr2){ //不要直接使用var arr = arr1,这样arr只是arr1的一个引用,两者的修改会互相影响 var arr = arr1.concat(); //或者使用slice()复制,var arr = arr1.slice(0) for(var i=0;i<arr2.length;i++){ arr.indexOf(arr2[i]) === -1 ? arr.push(arr2[i]) : 0; } return arr; } console.log(concat_(arr1,arr2));
실행 결과:
var arr1 = ['a','b']; var arr2 = ['a','c','d']; var arr3 = [1,'d',undefined,true,null]; //合并多个数组,去重 var concat = function(arr1,arr2,arr3){ if(arguments.length <= 1){ return false; } var concat_ = function(arr1,arr2){ var arr = arr1.concat(); for(var i=0;i<arr2.length;i++){ arr.indexOf(arr2[i]) === -1 ? arr.push(arr2[i]) : 0; } return arr; } var result = concat_(arr1,arr2); for(var i=2;i<arguments.length;i++){ result = concat_(result,arguments[i]); } return result; } console.log(concat(arr1,arr2,arr3));
실행 결과:
//合并多个数组,去重,排序 var arr1 = [1,6,4,0]; var arr2 = [8,20,7,4.5]; var arr3 = [6,0,7,90,2]; var concat = function(arr1,arr2,arr3){ if(arguments.length <= 1){ return false; } var concat_ = function(arr1,arr2){ var arr = arr1.concat(); for(var i=0;i<arr2.length;i++){ arr.indexOf(arr2[i]) === -1 ? arr.push(arr2[i]) : 0; } return arr; } var result = concat_(arr1,arr2); for(var i=2;i<arguments.length;i++){ result = concat_(result,arguments[i]); } //排序 function sortNumber(a,b){ return a - b; } return result.sort(sortNumber); } console.log(concat(arr1,arr2,arr3));
실행 결과:
나는 당신이 방법을 마스터했다고 믿습니다. 이 기사의 사례를 읽은 후 더 흥미로운 내용을 보려면 PHP 중국어 웹사이트의 다른 관련 기사를 주목하세요!
추천 도서:
antd 드롭다운 상자 연결을 사용하는 단계에 대한 자세한 설명
위 내용은 재계산을 위해 JS를 사용하여 여러 배열을 병합하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!