2015-02-05 1 views
-1

영숫자 배열을 정렬하는 데 문제가있었습니다. 출력이 정렬되지자바 스크립트에서 영숫자 배열을 정렬하는 방법

var alphaNumericArray = ['8a337e46-7d3f-46bc-b661-579f8d25fe09', 
'09312d27-4ddc-458e-95dd-74531f787368', 
'e7c5fba1-ce59-439a-a560-8f558e7c0ac4', 
'1edcdde8-702e-4703-a505-ca81b77accdd', 
'2f66ba6c-7fd2-4d52-8ed6-b0ee6d4d0310', 
'7529217d-ee80-41eb-ade7-208674924ab9', 
'523f4f75-8d0a-4ad1-8f40-e8bc679956be', 
'80871291-c8de-47d9-9b02-3f8444c5d64e', 
'7529217d-ee80-41eb-ade7-208674924ab9']; 

alphaNumericArray.sort(function(a, b) { 
    a = a.value; 
    b = b.value; 
    return a-b; 
}); 

//console.log(alphaNumericArray); 
//alert(alphaNumericArray); 

:

종류의 패턴 번호는 먼저 편지를

09312d27-4ddc-458e-95dd-74531f787368, 
1edcdde8-702e-4703-a505-ca81b77accdd, 
..... 

코드를 온다. 그것은 나에게 경보 팝업과 콘솔 로그에서 같은 배열을 보여줍니다.

+7

더 읽어 기본적으로 정렬 문자열 비교. 하나의 문자열을 다른 문자열에서 뺄 수 없으므로 비교 함수가 작동하지 않습니다. – Pointy

+0

또한 이것은 jQuery와는 아무런 관련이 없습니다. – Pointy

+1

'[...] jQuery는 DOM (HTML 구조) 순회, 이벤트 처리, 애니메이션 및 AJAX 상호 작용을 용이하게하는 인기있는 크로스 브라우저 JavaScript 라이브러리입니다. [...]'질문은 jQuery와 전혀 관련이 없습니다. 하지만 바닐라 자바 ​​스크립트입니다. –

답변

2

var alphaNumericArray = [ 
 
    '8a337e46-7d3f-46bc-b661-579f8d25fe09', 
 
    '09312d27-4ddc-458e-95dd-74531f787368', 
 
    'e7c5fba1-ce59-439a-a560-8f558e7c0ac4', 
 
    '1edcdde8-702e-4703-a505-ca81b77accdd', 
 
    '2f66ba6c-7fd2-4d52-8ed6-b0ee6d4d0310', 
 
    '7529217d-ee80-41eb-ade7-208674924ab9', 
 
    '523f4f75-8d0a-4ad1-8f40-e8bc679956be', 
 
    '80871291-c8de-47d9-9b02-3f8444c5d64e', 
 
    '7529217d-ee80-41eb-ade7-208674924ab9' 
 
]; 
 

 
alphaNumericArray.sort(); 
 

 
document.getElementById('out').textContent = JSON.stringify(alphaNumericArray, null, 2);
<pre id="out"></pre>

결과는 다음과 같습니다

[ 
    "09312d27-4ddc-458e-95dd-74531f787368", 
    "1edcdde8-702e-4703-a505-ca81b77accdd", 
    "2f66ba6c-7fd2-4d52-8ed6-b0ee6d4d0310", 
    "523f4f75-8d0a-4ad1-8f40-e8bc679956be", 
    "7529217d-ee80-41eb-ade7-208674924ab9", 
    "7529217d-ee80-41eb-ade7-208674924ab9", 
    "80871291-c8de-47d9-9b02-3f8444c5d64e", 
    "8a337e46-7d3f-46bc-b661-579f8d25fe09", 
    "e7c5fba1-ce59-439a-a560-8f558e7c0ac4" 
] 

자바 스크립트에서 정렬 여기 https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort

+1

이것은 올바른 해결책이지만 작동하는 이유에 대해 설명하십시오 (및 OP의 시도는 그렇지 않습니다) – Bergi

+0

여기를 읽으십시오 http://www.w3schools.com/jsref/jsref_sort.asp –

+1

[MDN] (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort)를 참조하십시오. 그러나 나는 당신이 설명을 통합하기 위해 당신의 답을 편집 할 것을 제안하고있다 :-) – Bergi