JavaScript: Create a function that accepts up to n arguments, ignoring any additional arguments
JavaScript fundamental (ES6 Syntax): Exercise-258 with Solution
Limit Function Arguments
Write a JavaScript program to create a function that accepts up to n arguments, ignoring any additional arguments.
- Call the provided function, fn, with up to n arguments, using Array.prototype.slice(0, n) and the spread operator (...).
Sample Solution:
JavaScript Code:
//#Source https://bit.ly/2neWfJ2
// Define a function 'ary' that takes a function 'fn' and a number 'n', returning a new function that accepts up to 'n' arguments
const ary = (fn, n) => (...args) => fn(...args.slice(0, n));
// Define a function 'firstTwoMax' that limits the maximum number of arguments to 2 using 'ary' with 'Math.max'
const firstTwoMax = ary(Math.max, 2);
// Map over an array of arrays, applying 'firstTwoMax' to each inner array
console.log([[2, 6, 'a'], [8, 4, 6], [10]].map(x => firstTwoMax(...x))); // [6, 8, 10] (maximum of the first two elements in each inner array)
Output:
[6,8,10]
Flowchart:
Live Demo:
See the Pen javascript-basic-exercise-257-1 by w3resource (@w3resource) on CodePen.
Improve this sample solution and post your code through Disqus
Previous: Write a JavaScript program to convert a 2D array to a comma-separated values (CSV) string.
Next: Write a JavaScript program to decode a string of data which has been encoded using base-64 encoding.
What is the difficulty level of this exercise?
Test your Programming skills with w3resource's quiz.
- Weekly Trends and Language Statistics
- Weekly Trends and Language Statistics