Classificar uma matriz de objetos por ordem personalizada

Eu tenho uma matriz de objetos que possuem uma propriedade chamada 'CODE'.

[
  {
   ID: 168,
   NAME: "First name",
   CODE: "AD"
  },
  {
   ID: 167,
   NAME: "Second name",
   CODE: "CC"
  },
  {
   ID: 169,
   NAME: "Third name",
   CODE: "CCM"
  },
  {
   ID: 170,
   NAME: "Fourth name",
   CODE: "CR"
  },
]

Como faço para solicitar a matriz por um pedido personalizado, como:

var item_order = ["CCM","CR","AD","CC"];

Tenho tentado vários métodos sem sucesso. Por favor ajude.

questionAnswers(5)

yourAnswerToTheQuestion