배열 Array.sort()정렬 방법
sort 비교 횟수,sort 용법,sort 상용
묘사 하 다.
방법 sort()는 원래 배열 에서 배열 요 소 를 정렬 합 니 다.즉,정렬 할 때 새로운 배열 복사 본 을 만 들 지 않 습 니 다.방법 sort()를 호출 할 때 인 자 를 사용 하지 않 으 면 알파벳 순서(더 정확히 말 하면 문자 인 코딩 순서)로 배열 의 요 소 를 정렬 합 니 다.이 를 실현 하려 면 먼저 배열 의 요 소 를 문자열 로 변환 해 야 한다(필요 하 다 면).
다른 순서 로 정렬 하려 면 비교 함 수 를 제공 해 야 합 니 다.이 함 수 는 두 개의 값 을 비교 한 다음 에 이 두 값 의 상대 적 인 순 서 를 설명 하 는 숫자 를 되 돌려 줍 니 다.비교 함 수 는 두 개의 매개 변수 a 와 b 를 가 져 야 합 니 다.그 반환 값 은 다음 과 같 습 니 다.
평가 기준 에 따 르 면 a 가 b 보다 작 으 면 정렬 된 배열 에 a 가 b 보다 나타 나 기 전에 0 보다 작은 값 을 되 돌려 줍 니 다.
a 가 b 라면 0 으로 돌아 갑 니 다.
a 가 b 보다 크 면 0 이상 의 값 을 되 돌려 줍 니 다.
배열 의 undefined 요 소 는 모두 배열 의 끝 에 배열 되 어 있 습 니 다.사용자 정의 정렬 함 수 를 제공 하 더 라 도 undefined 값 이 제공 하 는 orderfunc 에 전달 되 지 않 기 때 문 입 니 다.
JavaScript 에서 배열 의 sort()방법 은 주로 배열 의 요 소 를 정렬 하 는 데 사 용 됩 니 다.그 중에서 sort()방법 은 선택 할 수 있 는 매개 변수 가 있 습 니 다.그러나 이 매개 변 수 는 함수 여야 합 니 다.배열 이 sort()방법 을 호출 할 때 전송 되 지 않 으 면 알파벳 순서(문자 인 코딩 순서)로 배열 의 요 소 를 정렬 합 니 다.다른 기준 에 따라 정렬 하려 면 하나의 매개 변 수 를 전달 하고 함수 로 해 야 합 니 다.이 함 수 는 두 개의 값 을 비교 하고 이 두 값 의 상대 적 인 순 서 를 설명 하 는 숫자 를 되 돌려 줍 니 다.
1.숫자 배열 을 작은 것 에서 큰 것 으로 정렬 합 니 다.
코드:
var arr = [22,12,3,43,56,47,4];
arr.sort();
console.log(arr); // [12, 22, 3, 4, 43, 47, 56]
arr.sort(function (m, n) {
if (m < n) return -1
else if (m > n) return 1
else return 0
});
console.log(arr); // [3, 4, 12, 22, 43, 47, 56]
2.문자열 배열 에 대해 대소 문 자 를 구분 하지 않 는 알파벳 순 서 를 실행 합 니 다.코드:
var arr = ['abc', 'Def', 'BoC', 'FED'];
console.log(arr.sort()); // ["BoC", "Def", "FED", "abc"]
console.log(arr.sort(function(s, t){
var a = s.toLowerCase();
var b = t.toLowerCase();
if (a < b) return -1;
if (a > b) return 1;
return 0;
})); // ["abc", "BoC", "Def", "FED"]
3.대상 을 포함 하 는 배열 의 순 서 는 대상 의 연령 에 따라 크 고 작은 순서 로 배열 해 야 한다.코드:
var arr = [{'name': ' ', age: 26},{'name': ' ', age: 12},{'name': ' ', age: 37},{'name': ' ', age: 4}];
var objectArraySort = function (keyName) {
return function (objectN, objectM) {
var valueN = objectN[keyName]
var valueM = objectM[keyName]
if (valueN < valueM) return 1
else if (valueN > valueM) return -1
else return 0
}
}
arr.sort(objectArraySort('age'))
console.log(arr) // [{'name': ' ', age: 37},{'name': ' ', age: 26},{'name': ' ', age: 12},{'name': ' ', age: 4}]
위 에서 말 한 것 은 소 편 이 소개 한 자 바스 크 립 트 의 배열 Array.sort()정렬 방법 입 니 다.여러분 에 게 도움 이 되 기 를 바 랍 니 다.궁금 한 점 이 있 으 시 면 메 시 지 를 남 겨 주세요.소 편 은 제때에 답 해 드 리 겠 습 니 다.여기 서도 저희 사이트 에 대한 여러분 의 지지 에 감 사 드 립 니 다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
[2022.04.19] 자바스크립트 this - 생성자 함수와 이벤트리스너에서의 this18일에 this에 대해 공부하면서 적었던 일반적인 함수나 객체에서의 this가 아닌 오늘은 이벤트리스너와 생성자 함수 안에서의 this를 살펴보기로 했다. new 키워드를 붙여 함수를 생성자로 사용할 때 this는...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.