multi sort object array

sort by two fields

by John Allan

JavaScript

cmp = function(a, b) {
    if (a > b) return +1;
    if (a < b) return -1;
    return 0;
}

var array = [
{
order: '1',
parentUrl: 'folder2'
},
{
order: '1',
parentUrl: 'folder1'
},
{
order: '2',
parentUrl: 'folder1'
},
{
order: '2',
parentUrl: 'folder2'
},
{
order: '5',
parentUrl: 'folder1'
},
{
order: '3',
parentUrl: 'folder2'
}
];

array.sort(function(a, b) { 
    return cmp(a.parentUrl,b.parentUrl) ||        
    cmp(a.order,b.order)
})

for (var i = 0; i < array.length; i++) {
   document.write(array[i].parentUrl + array[i].order + '<br>');
}