我想知道在子函数中调用返回父函数。
app.get('/path', function(req, res, next) {
var result = child('test_Val', next);
return res.send(200);
});
function child(arg1, next) {
if (condition) {
//I want to call return parent function with next() here.
}
}
有可能吗?
答案 0 :(得分:1)
作为序言,你真的不应该这样做。你的问题几乎肯定意味着你设计了错误的东西,这样做会在v8中禁用大量的优化。
但你可以做到。
在函数内部,可以使用魔术变量arguments
。这是一个类似于数组,包含该函数的所有参数。此外,它还有一些有趣的属性 - 其中一个是callee
。这是对您当前所处功能的引用。它还有一些有趣的属性。一个是arguments
,它指向原始的arguments
对象。我们正在寻找的是caller
。
因此,从函数内部,arguments.callee.caller
是对调用函数的引用。
再次,请不要这样做。你应该提出更多背景的另一个问题,以便有人可以帮助你解决这里的真正问题。