JSFiddle - React, Tailwind, and code Playground

JavaScript

let wrongOrderObj = {
  'orange': 'f',
	'blue': 'z',
  'red': 'c',
  'gold': 'y',
  'purple': 'p',
	'green': 'a',
  'yellow': 'd'
};

let wantedOrderObj = {
	'green': 'a',
  'blue': 'z',
  'red': 'c',
  'gold': 'y',
  'purple': 'p',
  'yellow': 'd',
  'orange': 'f'
};

let newArr = [],
		loopCount = 1;

function reOrderObj() {
	for (let key in wrongOrderObj) {
  	for (let i = 0; i < newArr.length; i++) {
    	if (! key in newArr[i]) {
      	if (key === 'green') {
          newArr.push({key : wrongOrderObj[key]});
        }
        else if (key === 'blue') {
          newArr.push({key : wrongOrderObj[key]});
        }
        else if (key !== 'purle' && key !== 'yellow' && key !== 'orange') {
          newArr.push({key : wrongOrderObj[key]});
        }
        else {
          if (key === 'purple') {
            newArr.push({key : wrongOrderObj[key]});
          }
          else if (key === 'yellow') {
            newArr.push({key : wrongOrderObj[key]});
          }
          else if (key === 'orange') {
            newArr.push({key : wrongOrderObj[key]});
          }
        }
      }
    }
    if (newArr.length < loopCount) {
    	loopCount += 1;
      reOrderObj();
    }
    else {
    	console.log(newArr);
    }
  }
}

reOrderObj();