Help me on this coding. Thanks

Help me on this coding. Thanks

Online I found this coding to sort a json. But I don't understand how it works.

In this line,

  1. returnthis.pushStack([].sort.apply(this, arguments ),[]); 
what are they doing ? what is "sort.apply"? Anybody can convert that 
to plain coding or point to any link ?



  1. jQuery.fn.sort = function() { 
              return this.pushStack( [].sort.apply( this, arguments ), []); 
          }; 

           function sortLastName(a,b){ 
               if (a.l_name == b.l_name){
                 return 0;
               }
               return a.l_name> b.l_name ? 1 : -1; 
           }; 
            function sortLastNameDesc(a,b){ 
               return sortLastName(a,b) * -1; 
           };
          var people= [
          {
          "f_name": "john",
          "l_name": "doe",
          "sequence": "0",
          "title" : "president",
          "url" : "google.com",
          "color" : "333333",
          },
          {
          "f_name": "michael",
          "l_name": "goodyear",
          "sequence": "0",
          "title" : "general manager",
          "url" : "google.com",
          "color" : "333333",
          }]

          sorted=$(people).sort(sortLastNameDesc);