>웹 프론트엔드 >JS 튜토리얼 >ID를 사용하지 않고 다른 배열의 순서에 따라 JavaScript 배열을 정렬하는 방법은 무엇입니까?

ID를 사용하지 않고 다른 배열의 순서에 따라 JavaScript 배열을 정렬하는 방법은 무엇입니까?

Susan Sarandon
Susan Sarandon원래의
2024-12-12 11:46:13995검색

How to Sort a JavaScript Array Based on Another Array's Order Without Using IDs?

ID 없이 다른 배열의 순서를 기반으로 JavaScript 배열 정렬

다음 시나리오를 고려해 보세요. itemsArray와 sortingArr이라는 두 개의 배열이 있습니다. itemsArray는 ['Anne', 'a']와 같은 이름-문자 쌍을 포함하는 반면 sortingArr은 원하는 문자 순서를 지정합니다(예: ['b', 'c', 'b', 'b', 'a', 'd'].

목표는 고유한 속성이 부족함에도 불구하고 itemsArray의 순서가 sortingArr의 순서와 최대한 일치하도록 재정렬하는 것입니다.

이를 달성하는 우아하고 효율적인 방법 중 하나는 정렬 방법을 사용하는 것입니다.

itemsArray.sort(function(a, b){  
  return sortingArr.indexOf(a) - sortingArr.indexOf(b);
});

이 스니펫에서 정렬 방법은 사용자 정의 비교 함수를 사용하여 itemsArray의 각 요소를 비교합니다. 이 함수는 sortingArr의 현재 요소 인덱스와 다른 요소 인덱스 간의 차이를 반환합니다. 이 비교를 통해 동일한 문자를 가진 요소가 함께 그룹화되고 sortingArr에 따라 정렬됩니다.

출력 itemsArray는 다음과 같이 재배열됩니다.

[
  ["Bob", "b"],
  ["Jason", "c"],
  ["Henry", "b"],
  ["Thomas", "b"]
  ["Anne", "a"],
  ["Andrew", "d"],
]

위 내용은 ID를 사용하지 않고 다른 배열의 순서에 따라 JavaScript 배열을 정렬하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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