js 에서 sort () 방법의 용법, 파라미터 및 정렬 원리

4828 단어 웹 전단 개발
다음으로 이동:http://segmentfault.com/a/1190000000410506
sort () 방법 은 배열 의 요 소 를 정렬 하 는 데 사 용 됩 니 다.문법: arrayObject. sort (sortby);인자 sortby 선택 가능.정렬 순 서 를 정 하 다.함수 여야 합 니 다.주: 이 방법 을 호출 할 때 파 라 메 터 를 사용 하지 않 으 면 배열 의 요 소 를 알파벳 순 으로 정렬 하고 더 정확하게 말 하 며 문자 인 코딩 순서 로 정렬 합 니 다.이 를 실현 하려 면 먼저 배열 의 요 소 를 문자열 (필요 하 다 면) 로 바 꾸 어 비교 해 야 한다.
다른 기준 에 따라 정렬 하려 면 비교 함 수 를 제공 해 야 합 니 다. 이 함 수 는 두 개의 값 을 비교 한 다음 에 이 두 값 의 상대 적 인 순 서 를 설명 하 는 숫자 를 되 돌려 줍 니 다.비교 함 수 는 두 개의 인자 a 와 b 를 가 져 야 합 니 다. 그 반환 값 은 다음 과 같 습 니 다. a 가 b 보다 작 으 면 정렬 된 배열 에서 a 가 b 앞 에 나타 나 야 합 니 다. 0 보다 작은 값 을 되 돌려 줍 니 다.a 가 b 와 같 으 면 0 으로 돌아간다.a 가 b 보다 크 면 0 이상 의 값 을 되 돌려 줍 니 다.
예 1: 우 리 는 배열 을 만 들 고 알파벳 순 으로 정렬 할 것 입 니 다.
<script type="text/javascript">

var arr = new Array(6)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"
arr[3] = "James"
arr[4] = "Adrew"
arr[5] = "Martin"

document.write(arr + "
"
) document.write(arr.sort())
script>

출력:
George,John,Thomas,James,Adrew,Martin
Adrew,George,James,John,Martin,Thomas

예 2: 우 리 는 배열 을 만 들 고 알파벳 순 으로 정렬 할 것 입 니 다.
<script type="text/javascript">

var arr = new Array(6)
arr[0] = "10"
arr[1] = "5"
arr[2] = "40"
arr[3] = "25"
arr[4] = "1000"
arr[5] = "1"

document.write(arr + "
"
) document.write(arr.sort())
script>

출력:
10,5,40,25,1000,1
1,10,1000,25,40,5

위의 코드 는 수치의 크기 에 따라 숫자 를 정렬 하지 않 았 습 니 다. 이 를 실현 하려 면 정렬 함 수 를 사용 해 야 합 니 다.
<script type="text/javascript">

function sortNumber(a,b)
{
return a - b
}

var arr = new Array(6)
arr[0] = "10"
arr[1] = "5"
arr[2] = "40"
arr[3] = "25"
arr[4] = "1000"
arr[5] = "1"

document.write(arr + "
"
) document.write(arr.sort(sortNumber))
script>

출력:
10,5,40,25,1000,1
1,5,10,25,40,1000

sort 방법
제 보

좋은 웹페이지 즐겨찾기