-
[Javascript] 배열 및 객체 정렬언어/자바스크립트 2016. 8. 25. 20:49
배열 정렬(오름차순 및 내림차순)
//정렬할 배열 var test = [3, 9, 1, 8]; //배열 정렬 test.sort(); //결과값 [1, 3, 8, 9] test.reverse(); //결과값 [9, 8, 3, 1]
객체정렬(오름차순)
//정렬할 객체 배열 var test = { id: "test", name: "test", children: [ { name: "3번", seq: 3 }, { name: "7번", seq: 7 }, { name: "1번", seq: 1 }, { name: "4번", seq: 4 } ] }; //현재 객체 배열을 정렬 test.children.sort(function (a, b) { return a.seq < b.seq ? -1 : a.seq > b.seq ? 1 : 0; });
// 더 간단한 방법
test.children.sort(function (a, b) {
return a.seq < b.seq ? -1 : 1;
});
//결과값 { id: "test", name: "test", children: [ { name: "1번", seq: 1 }, { name: "3번", seq: 3 }, { name: "4번", seq: 4 }, { name: "7번", seq: 7 } ] }
.sort() method 안에 함수를 파라미터로 넣어 1, -1, 0을 리턴하여 순서를 정하는 방식이다.
seq를 기준으로 내림차순으로 정렬하고 싶은 경우 부등호의 위치를 변경하거나 -1과 1의 자리를 변경하면 된다.