2012-08-17 4 views
0

Persons라는 객체 배열이 있는데 멤버 중 하나를 기준으로 정렬하고 싶습니다. javascript prorotype을 처음 사용하고이를 수행하는 방법을 모르겠습니다. 객체는 다음과 같이 보입니다 :프로토 타입을 사용하여 객체 정렬

[ Object { EntityId=0, Name="Edibert", Number="1234", Value=""}] 

[ Object { EntityId=0, Name="Jairo", Number="1234", Value=""}] 

그래서이 객체에는 해당 객체의 배열에 대한 몇 가지 항목이 있습니다. this.Persons[0].Name과 같은 작업을 수행하여 이름에 액세스 할 수 있다는 것을 알고 있습니다. 하지만 어떻게 이름순으로 정렬 할 수 있습니까?

는 너무 감사

+0

다음과 같은 작은 lib를 사용하면 도움이됩니다. https://github.com/webadvanced/jsLINQ – Paul

답변

1

당신은 프로토 타입없이이 작업을 수행 할 수 있습니다

Persons.sort(function(a,b) { 
    if(a.Name < b.Name) { return -1; } 
    if(a.Name > b.Name) { return 1; } 
    return 0; 
}); 

너무 오래하면 다음 값 중 하나를 반환, 당신은 sort 함수 내에서 원하는 객체의 속성을 사용 A는 최종 배열 B 전에 나타나는 경우가

  • (-1)
  • (1) 인 경우 나타나는 B
  • 는 (0)으로 정렬되는 두 항목 현실적으로

동일한 경우, 부정 또는 양수를 리턴 값으로 일 것이지만 -11 종래이다.

관련 문제