你能调用一个在调用者上下文中返回的函数吗
Can you call a function that returns in the context of the caller?
我认为这是不可能的,但嘿,你永远不会知道。我很好奇这在通用语言中是否可行。我的示例将使用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
显然有更好的表达方式,我只是想知道这个概念是否可行。
通常,如果你想停止调用你的函数的代码,你会抛出一个异常:
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) {}
相关文章:
- 你能调用一个在调用者上下文中返回的函数吗
- Web Worker postMessage({})何时返回给调用者
- 当javascript是单线程时,谁是onreadystatechange的调用者
- 函数调用者无效元素
- Javascript - make 函数在函数完成时告诉调用者
- 将数据传回jQuery插件的调用者元素
- Javascript在调用者“方法”之间更改变量
- 如何识别点击事件ember.js的调用者
- 用被调用者的尾部调用函数'的参数列表
- javascript可以在调用者之后定义被调用者,以及如何解析它
- 如何从严格模式获取调用者
- 是否可以在javascript中获取调用者上下文
- 对JavaScript中调用者元素的引用
- 为什么在JavaScript中可以引用调用者中的参数
- 主干自定义事件:获取调用者对象
- 将参数传递给回调函数时,与回调函数的调用者发生冲突
- 隔离作用域/将数组传递给指令调用者的好方法
- 多个调用者可以使用Babel await关键字订阅同一个异步函数吗?
- 如何打印所有调用者祖先
- 修改数组.forEach自动将上下文设置为调用者