Sort an object array by custom order

后端 未结 5 2293
名媛妹妹
名媛妹妹 2020-12-03 19:45

I have an array of objects which have a property called \'CODE\'.

[
  {
   ID: 168,
   NAME: \"First name\",
   CODE: \"AD\"
  },
  {
   ID: 167,
   NAME: \"         


        
5条回答
  •  -上瘾入骨i
    2020-12-03 20:29

    var array = [
      {
       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"
      },
    ];
    
    var sortOrder =  ["CCM","CR","AD","CC"];
    
    var sorted = array.sort((a, b) => sortOrder.indexOf(a.CODE) - sortOrder.indexOf(a.CODE));
    
    console.log(sorted);

提交回复
热议问题