Max/Min value of an attribute in an array of objects in JavaScript
In this article, we are given an array of objects and the task is to get the maximum and minimum values from the array of objects. For this approach, we have a few methods that will be discussed below.
Methods to get Min/Max values:
JavaScript apply() Method: This method is different from the function call() because of taking arguments as an array.
Syntax:
apply()
JavaScript Array map() Method: This method is used to create a new array with the results of calling a function for each element of the array. This method calls the given function once for each element in an array, in order.
Syntax:
array.map(function(cValue, index, arr), thisValue)
Example: This example gets the maximum value of the y property by using apply() and map() methods.
Javascript
let Arr = [
{ "x" : "3/10/2003" , "y" : 0.023452007 },
{ "x" : "8/12/2002" , "y" : 0.02504234 },
{ "x" : "1/16/2001" , "y" : 0.024533546 },
{ "x" : "8/19/2006" , "y" : 0.03123423457 }];
console.log(JSON.stringify(Arr));
function gfg_Run() {
console.log( "Maximum value of y = " +
Math.max.apply(Math, Arr.map( function (event) {
return event.y;
})));
}
gfg_Run();
|
Output
[{"x":"3/10/2003","y":0.023452007},{"x":"8/12/2002","y":0.02504234},{"x":"1/16/2001","y":0.024533546},{"x":"8/19/2006","y":0.03123423457}]
Maximum value of y = 0.03123423457
This method reduces the array to a single value. This method runs a defined function for every value of the array (from left to right). The return value of the function is stored in an accumulator (result or total).
Syntax:
array.reduce(function(total, curValue, curIndex, arr), initialValue)
Example: This example gets the minimum value of the y property by using the array.reduce() method. It returns the whole object.
Javascript
let Arr = [
{ "x" : "3/10/2003" , "y" : 0.023452007 },
{ "x" : "8/12/2002" , "y" : 0.02504234 },
{ "x" : "1/16/2001" , "y" : 0.024533546 },
{ "x" : "8/19/2006" , "y" : 0.03123423457 }];
console.log(JSON.stringify(Arr));
function gfg_Run() {
console.log(JSON.stringify(
Arr.reduce( function (prev, current) {
return (prev.y < current.y) ? prev : current
})));
}
gfg_Run();
|
Output
[{"x":"3/10/2003","y":0.023452007},{"x":"8/12/2002","y":0.02504234},{"x":"1/16/2001","y":0.024533546},{"x":"8/19/2006","y":0.03123423457}]
{"x":"3/10/2003","y":0.023452007}
Example: In this example, we will use JavaScript for loop to get the min and max values from an array of objects
Javascript
let Arr = [
{ "x" : "3/10/2003" , "y" : 0.023452007 },
{ "x" : "8/12/2002" , "y" : 0.02504234 },
{ "x" : "1/16/2001" , "y" : 0.024533546 },
{ "x" : "8/19/2006" , "y" : 0.03123423457 }];
let maxValue = Arr[0].y;
let minValue = Arr[0].y;
for (let i = 0; i < Arr.length; i++) {
if (Arr[i].y > maxValue) {
maxValue = Arr[i].y;
}
if (Arr[i].value < minValue) {
minValue = Arr[i].y;
}
}
console.log(Arr)
console.log( "Max Value:" , maxValue);
console.log( "Min Value:" , minValue);
|
Output
[
{ x: '3/10/2003', y: 0.023452007 },
{ x: '8/12/2002', y: 0.02504234 },
{ x: '1/16/2001', y: 0.024533546 },
{ x: '8/19/2006', y: 0.03123423457 }
]
Max Value: 0.03123423457
Min Value: 0.023452...
Last Updated :
13 Jul, 2023
Like Article
Save Article
Share your thoughts in the comments
Please Login to comment...