console.log("연록")

[JavaScript] value 값으로 내림차순 정렬 후 특정 key값 맨 뒤로 보내기 본문

hone in on/JavaScript

[JavaScript] value 값으로 내림차순 정렬 후 특정 key값 맨 뒤로 보내기

연 록 2022. 2. 7. 23:00
728x90

오늘의 예시 데이터

var data = [
    { "district": "부전제1동", "population": 15552 },
    { "district": "부전제2동", "population": 9947 },
    { "district": "연지동", "population": 20842 },
    { "district": "초읍동", "population": 22431 },
    { "district": "양정제1동", "population": 20540 },
    { "district": "양정제2동", "population": 12976 },
    { "district": "전포제1동", "population": 20927 },
    { "district": "전포제2동", "population": 21101 },
    { "district": "부암제1동", "population": 23009 },
    { "district": "부암제3동", "population": 18011 },
    { "district": "당감제1동", "population": 23900 },
    { "district": "당감제2동", "population": 10333 },
    { "district": "당감제4동", "population": 11757 },
    { "district": "가야제1동", "population": 19989 },
    { "district": "가야제2동", "population": 17199 },
    { "district": "개금제1동", "population": 17202 },
    { "district": "개금제2동", "population": 11357 },
    { "district": "개금제3동", "population": 29547 },
    { "district": "범천제1동", "population": 12046 },
    { "district": "범천제2동", "population": 20709 }
];

전과 동일한 데이터ㅎ

 

이 데이터를 population 순으로 내림차순 정렬하되 district가 '연지동'인 데이터를 맨 앞으로 가져와보자

 

 

//population 순으로 내림차순 정렬 후 district가 '연지동'인 값을 맨 앞으로
data.sort((a,b) => (b.district === '연지동') - (a.district === '연지동') || b.population - a.population)

 

결과

 

만약 연지동을 맨 뒤로 보내고 싶다면

 

//population 순으로 내림차순 정렬 후 district가 '연지동'인 값을 맨 뒤로
data.sort((a,b) => (a.district === '연지동') - (b.district === '연지동') || b.population - a.population)

 

결과