2009-03-09 16 views

cevap

2

Doğru bir şekilde anlıyorsam, üyeleri anahtar veya yöntem adına (aynı değerde) göre sıraya koymak ister misiniz? Üyenin hiçbir emri olmadığı için bu, Object için bir anlamı yoktur. Böyle bir dizide bu nesneleri koyarsanız

Ancak:

var apiDocs = [ 
    { 
     "methodName": "friendsGetByUser", 
     "methodDescription": "Returns user ids of friends of the specified user.", 
     ... 
    }, { 
     "methodName": "friendsGetBestFriends", 
     "methodDescription": "Returns user ids of best friends of the logged in user.", 
     ... 
    } 
    ... 
]; 

Sonra karşılaştırma işlevi geçirerek Array.sort çağırarak kolayca dizi sıralayabilirsiniz.

apiDocs.sort(function (a, b) { 
     return a.methodName < b.methodName; 
    }); 
0

Aşağıda kullanabilirsiniz işlev adlarının sıralanmış bir dizi almak için:

var functions = []; 
for(functionName in apiDocs) { 
    functions.push(functionName); 
} 
functions.sort(); 
Eğer daha karmaşık tür çeşit gerçekleştirmek istiyorsanız

burada sıralama sen gümrük konusunda daha fazla bilgi alabilirsiniz

var functions = []; 
for(functionName in apiDocs) { 
    functions.push(apiDocs[functionName]); 
} 
functions.sort(//put sorting closure here) 

çizgisinde bir şey yapabilirsiniz: Array Sorting Explained

İlgili konular