Skip to content

Instantly share code, notes, and snippets.

@ravivit9
Forked from christierney402/sortObj.js
Created January 14, 2016 21:02
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save ravivit9/c3f42bb9772a75bfb858 to your computer and use it in GitHub Desktop.
Save ravivit9/c3f42bb9772a75bfb858 to your computer and use it in GitHub Desktop.
JS: Sort a JavaScript object by key in alphabetical order case insensitive. Thanks to Arne Martin Aurlien and Ivan Krechetov for inspiration. #snippet
/**
* Sort JavaScript Object
* CF Webtools : Chris Tierney
* obj = object to sort
* order = 'asc' or 'desc'
*/
function sortObj( obj, order ) {
"use strict";
var key,
tempArry = [],
i,
tempObj = {};
for ( key in obj ) {
tempArry.push(key);
}
tempArry.sort(
function(a, b) {
return a.toLowerCase().localeCompare( b.toLowerCase() );
}
);
if( order === 'desc' ) {
for ( i = tempArry.length - 1; i >= 0; i-- ) {
tempObj[ tempArry[i] ] = obj[ tempArry[i] ];
}
} else {
for ( i = 0; i < tempArry.length; i++ ) {
tempObj[ tempArry[i] ] = obj[ tempArry[i] ];
}
}
return tempObj;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment