如何在array.map()中返回动态对象键[重复]

Posted

技术标签:

【中文标题】如何在array.map()中返回动态对象键[重复]【英文标题】:How to do return a dynamic object key in array.map() [duplicate] 【发布时间】: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。是的。我问了一个新问题:***.com/questions/44719783/… 【参考方案1】:

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

return o[key];

【讨论】:

以上是关于如何在array.map()中返回动态对象键[重复]的主要内容,如果未能解决你的问题,请参考以下文章

JavaScript注意的地方

为啥返回带有箭头函数的对象时,array.map 中需要 return 关键字?

如何创建要添加到 JavaScript 对象变量的动态键 [重复]

如何创建要添加到 JavaScript 对象变量的动态键 [重复]

在 .map 代码块中引用 .map 返回对象(数组)?

JMESPath 中的动态/计算键?