Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/410.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
基于字段从数组中获取javascript对象_Javascript_Angular_Typescript - Fatal编程技术网

基于字段从数组中获取javascript对象

基于字段从数组中获取javascript对象,javascript,angular,typescript,Javascript,Angular,Typescript,在对象数组中,我想选择在其中一个字段中具有最大值的对象 我了解如何选择值本身: Math.max.apply(Math, list.map(function (o) { return o.DisplayAQI; })) 。。。但我不知道如何执行上述操作,而是返回对象本身。您可以使用reduce获取显示AQI最高的对象 let list=[{DisplayAQI:20},{DisplayAQI:100},{DisplayAQI:200},{DisplayAQI:10}]; 让结果=list.r

在对象数组中,我想选择在其中一个字段中具有最大值的对象

我了解如何选择值本身:

Math.max.apply(Math, list.map(function (o) { return o.DisplayAQI; }))

。。。但我不知道如何执行上述操作,而是返回对象本身。

您可以使用
reduce
获取显示AQI最高的对象

let list=[{DisplayAQI:20},{DisplayAQI:100},{DisplayAQI:200},{DisplayAQI:10}];
让结果=list.reduce((c,v)=>c.DisplayAQI>v.DisplayAQI?c:v);

控制台日志(结果)
您可以使用
reduce
获取显示AQI最高的对象

let list=[{DisplayAQI:20},{DisplayAQI:100},{DisplayAQI:200},{DisplayAQI:10}];
让结果=list.reduce((c,v)=>c.DisplayAQI>v.DisplayAQI?c:v);
控制台日志(结果)
只需根据字段对数组进行排序,并获得零索引元素。

只需根据字段对数组进行排序,并获得零索引元素。


或者,您可以按降序对对象数组进行排序,并从
0th
索引中获取元素

let list=[{
AQI:20
}, {
显示AQI:100
}, {
空气质素:200
}, {
AQI:10
}];
让结果=list.sort(函数(a,b){
返回b.DisplayAQI-a.DisplayAQI
})[0];

log(result)
或者,您可以按降序对对象数组进行排序,并从
0th
索引中获取元素

let list=[{
AQI:20
}, {
显示AQI:100
}, {
空气质素:200
}, {
AQI:10
}];
让结果=list.sort(函数(a,b){
返回b.DisplayAQI-a.DisplayAQI
})[0];

console.log(result)
共享对象
。reduce
操作员会很好地找到共享对象的最大值可能的副本
。reduce
操作员会很好地找到好的解决方案的最大值可能的副本,因为听了这个问题后,我首先想到的是排序。但是,在这种情况下,我们可以利用reduce来实现这个结果。与reduce@AbhishekKumargood解决方案相比,排序非常慢,因为听了这个问题后,我首先想到的是排序。但是,在这种情况下,我们可以利用reduce来获得结果。与reduce@AbhishekKumar相比,排序速度非常慢
myObjectArray.sort ( (myObject1, myObject2) => {
return myObject1.field - myObject2.field
})[0]