JavaScript로 쉽게 키 값으로 JSON 객체 배열 정렬

이 비디오에서는 JavaScript를 사용하여 쉽게 키 값으로 JSON 객체 배열을 정렬하는 방법을 설명했습니다.

비디오를 보고 싶지 않은 분들을 위해 여기에 코드가 있습니다.

이것이 JSON 객체의 배열이라고 가정합니다.

var data = [
  { id: 2, name: "FIAT", active: true, parentId: "1" },
  { id: 11, name: "BMW", active: true, parentId: "1" },
  { id: 3, name: "RENAULT", active: false, parentId: "1" },
  { id: 0, name: "AUDI", active: true, parentId: "1" },
];


이제 이 json 객체 배열을 id 기준으로 정렬하려면 다음과 같이 하면 됩니다.

data = data.sort((a, b) => {
  if (a.id < b.id) {
    return -1;
  }
});


결과는 다음과 같습니다.

 [
  { id: 0, name: 'AUDI', active: true, parentId: '1' },
  { id: 2, name: 'FIAT', active: true, parentId: '1' },
  { id: 3, name: 'RENAULT', active: false, parentId: '1' },
  { id: 11, name: 'BMW', active: true, parentId: '1' }
] 


here에서 JavaScript array.sort 메서드에 대한 자세한 내용을 읽을 수 있습니다.

이 JSON 객체 배열을 name 기준으로 정렬(즉, 알파벳순으로 정렬)하려는 경우 다음과 같이 간단히 수행할 수 있습니다.

data = data.sort((a, b) => {
  if (a.name < b.name) {
    return -1;
  }
});


결과는 다음과 같습니다.

 [
  { id: 0, name: 'AUDI', active: true, parentId: '1' },
  { id: 11, name: 'BMW', active: true, parentId: '1' },
  { id: 2, name: 'FIAT', active: true, parentId: '1' },
  { id: 3, name: 'RENAULT', active: false, parentId: '1' }
] 


이 JSON 객체 배열을 active 기준(즉, 부울 값으로 정렬)으로 정렬하려면 다음과 같이 하면 됩니다.

data = data.sort((a, b) => {
  if (a.active == true && b.active == false) {
    return -1;
  }
  if (b.active == true && a.active == false) {
    return -1;
  }
});


결과는 다음과 같습니다.

 [
  { id: 3, name: 'RENAULT', active: false, parentId: '1' },
  { id: 2, name: 'FIAT', active: true, parentId: '1' },
  { id: 11, name: 'BMW', active: true, parentId: '1' },
  { id: 0, name: 'AUDI', active: true, parentId: '1' }
] 

좋은 웹페이지 즐겨찾기