[Javascript] 정렬하기

코드왕·2022년 7월 11일
0
post-thumbnail
post-custom-banner

1. 단순 정렬하기

a=[5,4,6]
a.sort()

//결과:[4,5,6]

2. 객체(숫자) 정렬하기

a=[{name:'kim',age:20},{name:'park',age:15},{name:'choi',age:25}]
a.sort(function(a,b{
	return a.age-b.age
})
//결과 [{name:'park',age:15},{name:'kim',age:20},{name:'choi',age:25}] >> 오름차순

▶ sort 내에 2개의 인자를 받으며, return이 음수이면 두개 중에 작은것을 앞으로 보낸다. 따라서 위에서 age를 비교하여 작은 것을 앞으로 보내는 것이고, 이는 오름차순 정렬이된다.
▶ return을 b.age-a.age로 바꾸게 되면 내림차순 정렬이 된다.

3.객체(문자) 정렬하기

a=[{name:'kim',age:20},{name:'park',age:15},{name:'choi',age:25}]
a.sort(function(a,b{
    var first=a.title[0];
    var second=b.title[0];                 
	return (first>second)-(second<first)
})
//결과 [{name:'choi',age:25},{name:'kim',age:20},{name:'park',age:15}] >> 오름차순

▶ 알파벳 첫글자로 오름차순 정렬하는 로직이다.
▶ 재밌는 것은 return true-false는 1, return false-true는 -1을 반환한다.
▶ 따라서 title의 첫글자를 변수로 지정(first,second)하고 각각을 비교한 것을 빼주면 정렬이 가능하다.

profile
CODE DIVE!
post-custom-banner

0개의 댓글