w3resource

JavaScript: Return the minimum-maximum value of an array, after applying the provided function to set comparing rule

JavaScript fundamental (ES6 Syntax): Exercise-15 with Solution

Write a JavaScript program to return the minimum-maximum value of an array, after applying the provided function to set a comparing rule.

  • Use Array.prototype.reduce() in combination with the comparator function to get the appropriate element in the array.
  • Omit the second argument, comparator, to use the default one that returns the minimum element in the array.

Sample Solution:

JavaScript Code:

//#Source https://bit.ly/2neWfJ2 
// Define a function called `reduce_Which` that returns the minimum element of an array based on a provided comparator function.
const reduce_Which = (arr, comparator = (a, b) => a - b) =>
  arr.reduce((a, b) => (comparator(a, b) >= 0 ? b : a)); // Reduce the array and return the element that satisfies the comparator

// Example usage
console.log(reduce_Which([1, 3, 2])); // Returns the minimum element of the array
console.log(reduce_Which([10, 30, 20], (a, b) => b - a)); // Returns the maximum element of the array
console.log(reduce_Which(
  [{ name: 'Kevin', age: 16 }, { name: 'John', age: 20 }, { name: 'Ani', age: 19 }],
  (a, b) => a.age - b.age)); // Returns the object with the minimum age

Output:

1
30
{"name":"Kevin","age":16}

Flowchart:

flowchart: Return the minimum-maximum value of an array, after applying the provided function to set comparing rule

Live Demo:

See the Pen javascript-basic-exercise-1-15 by w3resource (@w3resource) on CodePen.


Improve this sample solution and post your code through Disqus

Previous: Write a JavaScript program to replace the names of multiple object keys with the values provided.
Next: Write a JavaScript function that returns true if the provided predicate function returns true for all elements in a collection, false otherwise.

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.



Become a Patron!

Follow us on Facebook and Twitter for latest update.

It will be nice if you may share this link in any developer community or anywhere else, from where other developers may find this content. Thanks.

https://w3resource.com/javascript-exercises/fundamental/javascript-fundamental-exercise-15.php