【问题标题】:How to do return a dynamic object key in array.map() [duplicate]如何在array.map()中返回动态对象键[重复]
【发布时间】:2017-11-26 21:28:56
【问题描述】:

如何在array.map()中返回一个动态对象键


我只是使用下面的代码从一个对象的数组中获取最大值,这很好用。

Math.max.apply(Math, class.map(function (o) { return o.Students; }));

其中,class 是 array,Students 是 keyarray object


但每当我需要获得最大值时,我都需要编写完整的代码。因此,我计划将该代码移至如下常用方法。

 getMaxValue(array: any[], obj: key) {
      return  Math.max.apply(Math, array.map(function (o) { 
               return o.key;  // Here I want return students objects
               }));   
           }

在哪里, 我已经传递了一个数组和键(想要获取最大值,例如 students)。所以每当我想获得最大值时,我就像调用该方法一样

 var maxOfStudents = getMaxValue(class, "Students");

但我不知道如何从array.map() 中的对象动态返回key。怎么办?

【问题讨论】:

  • 嗯...o[key] ?
  • String key 而不是 object 和 o[key] 应该可以解决问题。
  • @StanislavKvitash 如果我想要两把钥匙怎么办?
  • @RameshRajendran 这是另一个问题 :)
  • @StanislavKvitash。是的。我问了一个新问题:stackoverflow.com/questions/44719783/…

标签: javascript angularjs arrays angular typescript


【解决方案1】:

使用bracket notation 使用来自对象的字符串访问属性。

return o[key];

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多