مرتب سازی یک آرایه Json بر حسب یک property خاص در جاوا اسکریپت

این روزها استفاده از زبان جاوااسکریپت و تکنولوژی‌های مرتبط با آن بسیار فراگیر شده است. یکی از کارهای بسیار متداول در جاوااسکریپت، کار با آرایه‌های Json است. در این نوشته قصد داریم که مرتب سازی یک آرایه Json بر حسب یک property خاص در جاوااسکریپت را بررسی کنیم.

 فرض کنید یک آرایه json به صورت زیر داریم و می‌خواهیم آن را بر حسب id یا pid  مرتب کنیم:

var items = [{id:2, title:"...", pId:62},  
             {id:1, title:"...", pId:43},  
             {id:4, title:"...", pId:74},  
             {id:9, title:"...", pId:35},  
             {id:5, title:"...", pId:81}];

برای این‌کار تابعی به صوت زیر نوشته و آن را در ()array.sort فراخوانی می‌کنیم:

function sortByProperty(property){  
   return function(a,b){  
      if(a[property] > b[property])  
         return 1;  
      else if(a[property] < b[property])  
         return -1;  
  
      return 0;  
   }  
}

برای مرتب سازی کافی است به صورت زیر عمل کنیم:

items.sort(sortByProperty("pId"));  //sort according to pId  
   
items.sort(sortByProperty("id"));  //sort according to id

برچسب‌ها:،،،،،،
مرتضی اسدی
مرتضی اسدی
سلام! من مرتضی اسدی هستم، یک توسعه‌دهنده‌ی نرم‌افزار و در این وبلاگ دست‌نوشته‌هایم را می‌نویسم.