JSFiddle - React, Tailwind, and code Playground

by Michael Prosser

JavaScript

function sortObject (o) {
		
		var sorted = {},
		sortedNumeric = {},
		sortedGUID = {},
		key, a = [];

		for (key in o) {
			if (o.hasOwnProperty(key)) {
				a.push(key);
			}
		}

		a.sort();

		for (key = 0; key < a.length; key++) {
    
    	var str = a[key];
      
      if(str == 'GUID'){
      
      	sortedGUID[a[key]] = o[a[key]];
      
      } else if(isNaN(str.substr(0,1))){
      
      	sorted[a[key]] = o[a[key]];
      
      } else {
      
        sortedNumeric[a[key]] = o[a[key]];
      
      }
			
		}
    
    return  Object.keys(sortedGUID).concat(Object.keys(sortedNumeric).concat(Object.keys(sorted)));
		
	}
  
  var data = {"GUID":"4bbf4b0c-85ed-4486-a3f4-47e18d816e2e","1sdfdsf":"","343srgsdgdsfg":"","asfsadfs":""};
  
  console.log(sortObject(data));