Sort Array Index By Gender Using JavaScript

This tutorial will teach you how to do Sort Array Index By Gender using JavaScript. The program can sort a certain array object by adding a condition in the index position. This is a free code and you can apply this to your working projects. To learn more about this, just follow the steps below.

Getting started:

First you have to download bootstrap framework, this is the link for the bootstrap that I used for the layout design https://getbootstrap.com/.

The Main Interface

This code contains the interface of the application. To create this just write these block of code inside the text editor and save this as index.html.
  1. <!DOCTYPE html>
  2. <html lang="en">
  3.         <head>
  4.                 <meta charset="UTF-8" name="viewport" content="width=device-width, initial-scale=1" />
  5.                 <link rel="stylesheet" type="text/css" href="css/bootstrap.css" />
  6.         </head>
  7.         <nav class="navbar navbar-default">
  8.                 <div class="container-fluid">
  9.                         <a class="navbar-brand" href="https://sourcecodester.com">Sourcecodester</a>
  10.                 </div>
  11.         </nav>
  12.         <div class="col-md-3"></div>
  13.         <div class="col-md-6 well">
  14.                 <h3 class="text-primary">Sort Array Index By Gender Using JavaScript</h3>
  15.                 <hr style="border-top:1px dotted #ccc;"/>
  16.                 <div class="col-md-2"></div>
  17.                 <div class="col-md-8">
  18.                         <button type="button" class="btn btn-primary" onclick="sortAscending()">Ascending</button> <button type="button" class="btn btn-primary" onclick="sortDescending()">Descending</button>
  19.                        
  20.                         <br /><br />
  21.                        
  22.                         <table class="table table-bordered">
  23.                                 <thead class="alert-info">
  24.                                         <tr>
  25.                                                 <td>Firstname</td>
  26.                                                 <td>Lastname</td>
  27.                                                 <td>Gender</td>
  28.                                         </tr>
  29.                                 </thead>
  30.                                 <tbody id="result" style="background-color:#fff;"></tbody>
  31.                         </table>
  32.                 </div>
  33.         </div>
  34. </body>
  35. <script src="js/script.js"></script>
  36. </html>

Creating the Script

This code contains the script of the application. The code will sort the array object by gender when user click the button. To do this just copy and write these block of codes inside the text editor, then save it as script.js inside the js folder.
  1. var members = [
  2.         {"firstname":"John", "lastname":"Smith", "gender": "Male"},
  3.         {"firstname":"Claire", "lastname":"Temple", "gender": "Female"},
  4.         {"firstname":"Hailee", "lastname":"Stenfield", "gender": "Female"},
  5. ];
  6.        
  7. displayData(); 
  8.        
  9. function displayData(){
  10.         var data = "";
  11.         if(members.length > 0){
  12.                 for(var i=0; i < members.length; i++){
  13.                         data += "<tr>";
  14.                         data += "<td>"+members[i].firstname +"</td>";
  15.                         data += "<td>"+members[i].lastname+"</td>";
  16.                         data += "<td>"+members[i].gender+"</td>";
  17.                         data += "</tr>";
  18.                 }
  19.         }
  20.        
  21.         document.getElementById('result').innerHTML = data;
  22. }
  23.  
  24.  
  25. function sortAscending(){
  26.         if(members.length > 0){
  27.                 var sortArray = members;
  28.                
  29.                 sortArray.sort(function(a,b){
  30.                         if(a.gender < b.gender){
  31.                                 return -1;
  32.                         }
  33.                        
  34.                         if(a.gender > b.gender){
  35.                                 return 1;
  36.                         }
  37.                
  38.                         return 0;
  39.                 });
  40.                
  41.                
  42.                 var data = "";
  43.                
  44.                 if(members.length > 0){
  45.                         for(var i=0; i < members.length; i++){
  46.                                 data += "<tr>";
  47.                                 data += "<td>"+members[i].firstname +"</td>";
  48.                                 data += "<td>"+members[i].lastname+"</td>";
  49.                                 data += "<td>"+members[i].gender+"</td>";
  50.                                 data += "</tr>";
  51.                         }
  52.                 }
  53.                
  54.                 document.getElementById('result').innerHTML = data;
  55.                
  56.         }
  57.        
  58. }
  59.  
  60. function sortDescending(){
  61.         if(members.length > 0){
  62.                 var sortArray = members;
  63.                
  64.                 sortArray.sort(function(a,b){
  65.                         if(a.gender > b.gender){
  66.                                 return -1;
  67.                         }
  68.                        
  69.                         else if(a.gender < b.gender){
  70.                                 return 1;
  71.                         }else{
  72.                                 return 0;
  73.                         }
  74.                
  75.                        
  76.                 });
  77.                
  78.                
  79.                 var data = "";
  80.                
  81.                 if(members.length > 0){
  82.                         for(var i=0; i < members.length; i++){
  83.                                 data += "<tr>";
  84.                                 data += "<td>"+members[i].firstname +"</td>";
  85.                                 data += "<td>"+members[i].lastname+"</td>";
  86.                                 data += "<td>"+members[i].gender+"</td>";
  87.                                 data += "</tr>";
  88.                         }
  89.                 }
  90.                
  91.                 document.getElementById('result').innerHTML = data;
  92.                
  93.         }
  94. }
There you have it we successfully created a Sort Array Index By Gender using JavaScript. I hope that this simple tutorial help you to what you are looking for. For more updates and tutorials just kindly visit this site. Enjoy Coding!

Add new comment