LOOP THROUGH JSON RESULT AND SORT IN NUMERIC ORDER IN JAVA SCRIPT

ben reitman

Total Post:96

Points:676
Posted by  ben reitman
 1184  View(s)
Ratings:
Rate this:
Hi All!

This is my json:

{"event": { 
"items": [
            {"position": "2", "name": "John Doe 1"},
            {"position" : "1", "name": "John Doe 2"},
            {"position": "3", "name": "John Does 3"}
            ]
        }
This is how I loop through results after reading the json result:

$.each(data.event.items, function(val) {
 $('#list').append('<li>'+data.event.items[val].name+'</li>');
});
Right now the order is: John Doe 1, John Doe 2, John Doe 3. I want to loop them and display them in order of the position that is has been given. So the 

correct order would be John Doe 2, John Doe 1, John Doe 3.

How can I achieve that?
Thanks in advance!
  1. AVADHESH PATEL

    Post:604

    Points:4228
    Re: Loop through json result and sort in numeric order in java script

    Hi Ben!


    you can try this way

    sort your items before building the display 

    data.event.items.sort(function(a,b) {
       return a.position-b.position;        
    });
    Demonstration (click "Run with JS")

    Please note that there is no JSON in your problem, data is a plain JavaScript object.

    I hope it resolve your problem

  1. Vijay Shukla

    Post:100

    Points:700
    Re: Loop through json result and sort in numeric order in java script

    Hi Ben!

    You will need to sort the items first:

    data.event.items.sort(function(item_a, item_b) {
        return item_a.position - item_b.position;
    });

Answer

NEWSLETTER

Enter your email address here always to be updated. We promise not to spam!