Trier le tableau sur la valeur de la clé

J'ai une fonction qui trie par nom et un tableau de valeur /de paires de clés.

Je me demande comment puis-je passer la clé de tri est effectué pour que je puisse appeler la même fonction à chaque fois comme:

var arr = [{name:'bob', artist:'rudy'},
           {name:'johhny', artist:'drusko'},
           {name:'tiff', artist:'needell'},
           {name:'top', artist:'gear'}];

sort(arr, 'name');   //trying to sort by name
sort(arr, 'artist'); //trying to sort by artist

function sort(arr) {
  arr.sort(function(a, b) {
    var nameA=a.name.toLowerCase(), nameB=b.name.toLowerCase();
    if (nameA < nameB) //sort string ascending
      return -1;
    if (nameA > nameB)
      return 1;
    return 0; //default return value (no sorting)
   });          
}

source d'informationauteur Toniq | 2013-05-20