2017-01-20 3 views
1

У меня вопрос, я хотел бы использовать функцию obj.sort, как показано ниже, где объект, который я хочу сортировать, может ссылаться на глобальную переменную. Тем не менее, я хотел бы определить эту функцию как обычный способ, так что я могу называть его всякий раз, когда мне это нужно. Я не знаю, как я могу это сделать. Я не думаю, что могу использовать «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