How to sort an array of objects by multiple fields?

后端 未结 30 2829
北恋
北恋 2020-11-21 11:34

From this original question, how would I apply a sort on multiple fields?

Using this slightly adapted structure, how would I sort city (ascending) & then price (

30条回答
  •  后悔当初
    2020-11-21 12:04

    Simplest Way to sort array of object by multiple fields:

     let homes = [ {"h_id":"3",
       "city":"Dallas",
       "state":"TX",
       "zip":"75201",
       "price":"162500"},
      {"h_id":"4",
       "city":"Bevery Hills",
       "state":"CA",
       "zip":"90210",
       "price":"319250"},
      {"h_id":"6",
       "city":"Dallas",
       "state":"TX",
       "zip":"75000",
       "price":"556699"},
      {"h_id":"5",
       "city":"New York",
       "state":"NY",
       "zip":"00010",
       "price":"962500"}
      ];
    
    homes.sort((a, b) => (a.city > b.city) ? 1 : -1);
    

    Output: "Bevery Hills" "Dallas" "Dallas" "Dallas" "New York"

提交回复
热议问题