你能调用在调用者上下文中返回的函数吗?

2024-04-19 19:32:48 发布

您现在位置:Python中文网/ 问答频道 /正文

我不认为这是可能的,但是你永远不会知道。我很好奇这在通用语言中是否可行。我的例子将是JavaScript,但我想知道这是否可以用Python、PHP、Java等实现

假设有两个函数。你知道吗

var printX = function(x){
    checkX(x, this);
    console.log(x);
}
var checkX = function(x, caller){
    if (x > 10){
        caller.return;
    }
}
printX(5);  //Prints 5
printX(15); //Doesn't print anything

显然有更好的表达方式,我只想知道这个概念是否可行。你知道吗


Tags: 函数log语言ifvarfunctionjavajavascript
1条回答
网友
1楼 · 发布于 2024-04-19 19:32:48

通常,如果要停止调用函数的代码,会引发异常:

var printX = function(x) { checkX(x); document.write(x); } var checkX = function(x) { if (x > 10) { throw "exit"; } } try { printX(5) } catch(e) {} try { printX(15) } catch(e) {}

相关问题 更多 >