>  기사  >  웹 프론트엔드  >  JavaScript에서 열 값을 기준으로 2D 배열을 정렬하는 방법은 무엇입니까?

JavaScript에서 열 값을 기준으로 2D 배열을 정렬하는 방법은 무엇입니까?

Barbara Streisand
Barbara Streisand원래의
2024-11-15 19:11:05246검색

How to Sort a 2D Array by Column Value in JavaScript?

JavaScript에서 2D 배열 정렬

JavaScript에서 2D 배열을 열 값으로 정렬하려면 어떻게 해야 하나요?

다음과 같은 2D 배열이 있다고 가정해 보겠습니다. 형식:

[[12, "AAA"], [58, "BBB"], [28, "CCC"], [18, "DDD"]]

이 배열을 첫 번째 열을 기준으로 정렬하려고 합니다. 결과는 다음과 같습니다.

[[12, "AAA"], [18, "DDD"], [28, "CCC"], [58, "BBB"]]

해결책:

정렬 열 값별 2D 배열은 JavaScript에서 간단합니다. 이를 수행하는 방법은 다음과 같습니다.

var a = [[12, 'AAA'], [58, 'BBB'], [28, 'CCC'],[18, 'DDD']];

a.sort(sortFunction);

function sortFunction(a, b) {
    if (a[0] === b[0]) {
        return 0;
    }
    else {
        return (a[0] < b[0]) ? -1 : 1;
    }
}

이 함수는 다음 규칙을 사용합니다.

  • 첫 번째 열의 요소가 동일하면 0을 반환합니다.
  • 첫 번째 배열의 첫 번째 열에 있는 요소가 두 번째 열의 요소보다 작으면 -1을 반환합니다.
  • 첫 번째 배열의 첫 번째 열이 두 번째 열보다 크면 1을 반환합니다.

두 번째 열을 기준으로 배열을 정렬하려면 비교에서 a[0]을 a[1]로 바꾸면 됩니다.

a.sort(compareSecondColumn);

function compareSecondColumn(a, b) {
    if (a[1] === b[1]) {
        return 0;
    }
    else {
        return (a[1] < b[1]) ? -1 : 1;
    }
}

정렬 기능에 대한 자세한 내용은 JavaScript 설명서를 참조하세요.

위 내용은 JavaScript에서 열 값을 기준으로 2D 배열을 정렬하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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