My Code It Does Not Work. I want to Sum of Numbers that the user gives in arguments.
So I use here Argument Object but am unable to fetch what is the mistake.
// The Argument Object
function myFunc()
{
console.log("You give Total Numbers : " arguments.length);
let sum = 0;
console.log("Sum is : ");
arguments.forEach(element => {
sum = element;
});
console.log(sum);
}
myFunc(10,20);
myFunc(10,20,30);
myFunc(10,20,30,40);
CodePudding user response:
You could try this solution:
/**
* https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/arguments
*
* @param {array} args ...args is the rest parameters. It contains all the arguments passed to the function.
*/
function myFunc (...args) {
console.log(`You give Total Numbers : ${args.length}`);
/**
* Reduce is a built-in array method that applies a function against an accumulator and each element
* in the array (from left to right) to reduce it to a single value.
*
* https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/reduce
*/
const sum = args.reduce((acc, curr) => acc curr, 0);
console.log('Sum is :', sum);
};
myFunc(10, 20);
myFunc(10, 20, 30);
myFunc(10, 20, 30, 40);
Output
You give Total Numbers : 2
Sum is : 30
You give Total Numbers : 3
Sum is : 60
You give Total Numbers : 4
Sum is : 100
CodePudding user response:
Try this:
function myFunc(...arguments)
{
console.log("You give Total Numbers : " arguments.length);
console.log("Sum is : ");
let sum = 0;
arguments.forEach(element => {
sum = element;
});
console.log(sum);
}
CodePudding user response:
try this :
function myFunc() {
let sum = 0;
for (let i = 0; i < arguments.length; i ) {
sum = arguments[i];
}
console.log(
`
Total Number : ${arguments.length}
Sum : ${sum}
`
);
}
myFunc(10 , 20 , 30 , 40);
out put like this :
Total Number : 4
Sum : 100