2017-01-20 4 views
1

私は質問があります、私はソートしたいオブジェクトがグローバル変数によって参照することができます以下のようなobj.sort関数を使用したいと思います。しかし、私はこの関数を2番目の関数のように一般的に定義して、必要なときに呼び出せるようにしたいと考えています。私はそれをどのように達成できるのかよく分かりません。私は "if(a。[field] < b。[field])"を使うことはできないと思います。誰かがそれについていくつかのアイデアを持っているなら、あなたはそれについていくつかのアドバイスをすることができますか?関数をソートしてパラメータ化する方法は?

sortA() { 
     this.A.sort(function(a, b) { 
      if(a.name < b.name) return -1; 
      if(a.name > b.name) return 1; 
      return 0; 
     }); 
    } 

sort(A:Array<any>, field:string) { 
     A.sort(function(a, b) { 
      if(a.[field] < b.[field]) return -1; 
      if(a.[field] > b.[field]) return 1; 
      return 0; 
     }); 
    } 

答えて

0

ここに投稿するには長すぎる、このgist

を見ます
関連する問題