[英]function as a return type javascript
我正在尝试创建一个闭包
function init(x){
var y = 10;
return function display(a){
return y + a + x;
}
display(5);
}
init(4);
上面的闭包应返回19.
但是,它返回一个函数。
返回是在函数前面,而不是调用。
function init(x){
var y = 10;
function display(a){
return y + a + x;
}
return display(5);
}
init(4);
你必须移动“返回”。 return关键字将结束函数的代码执行并返回传递给返回的值(在您的情况下是函数)。 如果您的结果必须是19,请考虑使用以下代码:
function init(x) {
var y = 10;
function display(a) {
return y + a + x;
}
return display(5);
}
init(4);
一旦返回语句之后,init函数中的最后一行是无法访问的。 如果要返回原始值,则必须返回显示函数的结果。
function init(x){
var y = 10;
function display(a){
return y + a + x;
}
return display(5);
}
init(4);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.