What will be the last statement return in the following JavaScript code?
function constfuncs()
{
var funcs = [];
for(var i = 0; i < 10; i++)
funcs[i] = function() { return i; };
return funcs;
}
var funcs = constfuncs();
funcs[5]()
a) 9
b) 0
c) 10
d) 12
Answer: c
Explanation: The code above creates 10 closures, and stores them in an array. The closures are all defined within the same invocation of the function, so they share access to the variable i. When constfuncs() returns, the value of the variable i is 10, and all 10 closures share this value. Therefore, all the functions in the returned array of functions return the same value.
Related Posts
The ________ function can be used to create vectors of objects by concatenating things together.
What will be the output of the following R code?
> x <- vector(“numeric”, length = 10)
> xWhich of the following can be considered as object attribute?
R objects can have attributes, which are like ________ for the object.
Attributes of an object (if any) can be accessed using the ______ function.
Point out the correct statement?
If you explicitly want an integer, you need to specify the _____ suffix.
Join The Discussion