我试图在Javascript中获取匿名函数之外的值。基本上,我希望这个函数返回4.我觉得有一个简单的修复,但我不确定。谢谢!
function a(){
var x = 1;
()=>{
x = 4;
}
return x;
}
答案 0 :(得分:5)
你必须调用内部函数,但由于它是匿名的,它必须成为一个立即调用的函数表达式。并且,由于匿名函数中只有一个语句,如果您愿意,可以省略大括号。
function a(){
var x = 1;
(() => x = 4)();
return x;
}
console.log(a());
答案 1 :(得分:1)
您的示例定义了一个函数,但没有任何内容正在运行它。也许尝试使用IIFE:
function a(){
var x = 1;
(()=>{
x = 4;
})();
return x;
}
答案 2 :(得分:1)
你想要这样做很奇怪,但只要确保你调用内部函数。这可以使用立即调用的函数表达式语法来完成。
function a(){
var x = 1;
(()=>{
x = 4;
})()
return x;
}
console.log(a());