Q
What is the output of the following code? function makeAdder(a) { return function(b) { return a + b; }; } var add5 = makeAdder(5); console.log(add5(2));

Answer & Solution

Answer: Option A
Solution:
The makeAdder function returns a function that adds a and b. add5 is a function that adds 5 to its argument, so add5(2) returns 7.
Related Questions on Average

Which of the following correctly demonstrates a function returning another function?

A). function outer() { return function() { alert('Inner'); }; }

B). function outer() { function() { alert('Inner'); } return; }

C). function outer() { function() { alert('Inner'); }; }

D). function outer() { return function { alert('Inner'); }; }

How can you store a function as a property of an object?

A). var obj = { method: function() { alert('Hello'); } };

B). var obj = { method: alert('Hello'); };

C). var obj = { method: function { alert('Hello'); } };

D). var obj = { function() { alert('Hello'); } };

How do you define an anonymous function assigned to a variable?

A). var anon = function() { alert('Anonymous!'); };

B). var anon = function { alert('Anonymous!'); };

C). function anon() { alert('Anonymous!'); }

D). var anon = function anonymous() { alert('Anonymous!'); };

What will be the output of the following code? var multiply = (x, y) => x * y; console.log(multiply(3, 4));

A). 12

B). 34

C). multiply

D). undefined

Which of the following is an example of an arrow function assigned to a variable?

A). var add = (a, b) => { return a + b; };

B). var add = (a, b) => return a + b;

C). var add = (a, b) => { a + b };

D). var add = (a, b) { return a + b; };

How can you define a method inside an object?

A). var obj = { method: function() { alert('Hello'); } };

B). var obj = { method() { alert('Hello'); } };

C). Both A and B

D). var obj = { function method() { alert('Hello'); } };

Which of the following is an example of using a function as a return value?

A). function outer() { return function() { alert('Inner'); }; }

B). function outer() { function() { alert('Inner'); }; return; }

C). function outer() { function() { alert('Inner'); }; }

D). function outer() { return function { alert('Inner'); }; }

How do you create an Immediately Invoked Function Expression (IIFE)?

A). (function() { alert('IIFE'); })();

B). function() { alert('IIFE'); }();

C). (function { alert('IIFE'); })();

D). function() { alert('IIFE'); };

What will be the output of the following code? var counter = (function() { var count = 0; return function() { return ++count; }; })(); console.log(counter()); console.log(counter());

A). 1, 2

B). 0, 1

C). undefined, undefined

D). 2, 4

What will be the output of the following code? var add = new Function('a', 'b', 'return a + b'); console.log(add(2, 3));

A). 5

B). add

C). undefined

D). 2 3