I couldn't find an example here what I'm really looking for. I'd like to multiply all array elements, so if an array contains [1,2,3] the sum would be 1*2*3=6; So far I've got this code, but it returns undefined.
function multiply (array) {     var sum=1;     for (var i=0; i<array.length; i++) {         sum = sum * array[i];     }      return sum; } console.log(multiply[1,2,3]);   Could anyone please explain, what am I missing here? Thanks in advance!
To multiply a constant to each and every element of an array, use multiplication arithmetic operator * . To multiplication operator, pass array and constant as operands as shown below. where a is input array and c is a constant. b is the resultant array.
The cause is already known. Here's an alternative - using Array.reduce for your method:
console.log( [1, 2, 3].reduce( (a, b) => a * b ) ); console.log( Array.from( {length: 20} )   .map( (v, i) => i + 1 )   .reduce( (a,b) => a * b )   .toLocaleString());  // for empty arrays, use some initial value const arr = []; if (arr.reduce( (a, b) => a * b, -1 ) === -1) {   console.error(`The given array ${arr} is empty`); }  See also
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With