2015-01-19 2 views
0

현재 ~ 2000 개의 배열이있는 배열이 있습니다. 이러한 2 차 어레이에는 "포인트"출력이 있습니다. 포인트 값 (가장 높은 것부터 가장 낮은 것)까지 초기 배열을 정렬하고 싶습니다. 여기에 JSON의 예 (이것은 생산 배열 2000 항목이 염두에 두어야 만 세 배열과 배열을 포함)Javascript로 JSON 정렬

[ [ 'Tony Parker', 
    'Greivis Vasquez', 
    'Manu Ginobili', 
    'Tyreke Evans', 
    23400, 
    98.25 ], 
    [ 'Tony Parker', 
    'Greivis Vasquez', 
    'Manu Ginobili', 
    'Eric Gordon', 
    20500, 
    86.87 ], 
    [ 'Tony Parker', 
    'Greivis Vasquez', 
    'Manu Ginobili', 
    'DeMar DeRozan', 
    23200, 
    97.97 ], 
    ] 

점 값이 data[0][5], data[1][5].... data[2000][5]하는 것과 동일합니다.

자바 스크립트 내에 정렬 함수가 있다는 것을 알고 있지만 보조 배열에 기반한 항목의 정렬 기능을 사용하는 방법과 보조 배열의 다른 지점 값을 비교하는 방법이 명확하지 않습니다. 생각?

+0

서버에서 해보십시오. 클라이언트가 이미 다운로드 한 데이터를 추가로 정렬하도록 허용하려는 경우 중요하지 않습니다. – James

+0

감사합니다. 고마워요. 확실히 서버에서 정렬하고 싶습니다. – mkayen

답변

1

간단한 사용자 정의 정렬 트릭을 수행해야합니다

var arr = [ [ 'Tony Parker', 'Greivis Vasquez', 'Manu Ginobili', 'Tyreke Evans', 23400, 98.25 ], [ 'Tony Parker', 'Greivis Vasquez', 'Manu Ginobili', 'Eric Gordon', 20500, 86.87 ], [ 'Tony Parker', 'Greivis Vasquez', 'Manu Ginobili', 'DeMar DeRozan', 23200, 97.97 ] ] 

arr.sort(function(a,b){ // a and b are the 2 arrays to compare 
    return b[5] - a[5] // sort by descending, using the point value 
}) 

console.log(arr) 
I (즉, 정렬 된 JSON 개체를 반환) 그 다음 확실히 수행되는 유일한 정렬 인 경우 서버에서 데이터의 초기 정렬을하고 제안
+0

완벽. 정말 고마워. – mkayen