Amazon Interview Question

Implement Sum(3)(4)(5)=12 with javascript

Interview Answers

Anonymous

May 11, 2017

const Sum = a => b => c => a + b + c;

10

Anonymous

Mar 20, 2017

``` // Lexically nested function definitions defined within enclosing function function Sum(arg0) { function Inner1(arg1) { function Inner2(arg2) { return arg0 + arg1 + arg2; } return Inner2; } return Inner1; } console.log(Sum(3)(4)(5)); ```

8

Anonymous

Jul 26, 2017

var sum=0; // global variable function Sum(num){ sum=num+sum; return Sum; } Sum(3)(4)(5);

1

Anonymous

Sep 1, 2017

addNumbers([3,4,5]) const addNumbers = (numberArray) => { let result = 0; numberArray.map(x => { result = result + x; } return result; }

1

Anonymous

Aug 8, 2019

Find some generic solution. const Sum = (p1) => (p2) => p2 ? Sum(p1 + p2) : p1; const result = Sum(3)(4)(5); // also it can work for Sum(3)(4)(5)(); console.log( typeof result === 'function' ? result(): result);

1

Anonymous

May 8, 2020

Yall thinking too complicated: <p></p> var numbers = [3, 4, 5]; document.getElementById("total").innerHTML = numbers.reduce(myFunc); function myFunc(total, num) { return total + num; }

Anonymous

Jul 25, 2020

curried function in JS will solve this function Sum(param1){ return function(param2){ return function(param3){ return param1+param2+param3; } } } Sum(3)(4)(5) -->12

Anonymous

Dec 4, 2020

const sum = function (a) { let closureFunc = b => b ? sum(a + b) : a; closureFunc.toString = () => a; return closureFunc; }

Anonymous

Oct 23, 2021

Implement Sum(3)(4)(5)=12 with javascript ? Ans: var sum = function(a) { return function(b) { return a+ b; } } sum (3)(4)(5) ; // 12

Anonymous

May 22, 2018

function Sum(a){ return function(b){ return function(c){ return a+b+c; } } }

Anonymous

Feb 28, 2019

arrow fun undoubtedly make it pretty simple to get the result. const Sum = a => b => b ? Sum( a + b ) : a; console.log(Sum(3)(4)(2)(5)()); //19 console.log(Sum(3)(4)(1)()); //8

Anonymous

Mar 19, 2019

let x = a => b => b ? x(a+b) : a;

Anonymous

Sep 1, 2017

Correction! Missing closing bracket plus line terminator! 0 ▼ addNumbers([3,4,5]) const addNumbers = (numberArray) => { let result = 0; numberArray.map(x => { result = result + x; }); return result; }

Anonymous

Aug 18, 2017

function sum(x) { sum.result = (sum.result) ? sum.result += x : x; sum.valueOf = function() { return sum.result; } return sum; } sum(1)(2)(3); // == 6

Anonymous

Apr 9, 2017

ES6 Syntax: let add = (a, b) => a + b; console.log(add(2, 5)); // output: 7 const add2 = a => b => a + b; console.log(add2(2)(5));

Anonymous

Nov 25, 2017

var sum=0; // global variable function Sum(num){ return num; } document.write(Sum(3)+Sum(4)+Sum(5));

Anonymous

Jan 4, 2018

const sum = (arg1) => (arg2) => (arg3) => arg1 + arg2 + arg3; sum(1)(2)(3);