[英]javascript, strange function arrangement, don't understand
请参阅以下javascript。 当函数以这种方式排列时,它们如何能够运行而不被专门调用。 我的意思是下面的函数在不被调用的情况下运行,而且我不知道该怎么做。
(j, function() {
alert(1);
})
大概是这样的:
eval(s)(j, function() { catch (_) { } }
看起来这些是函数调用的参数,即
foo(j, function() {
alert(1);
})
这将传递j
的当前值作为第一个参数,并在那里列出的函数作为第二个参数。
就是说,要调用该功能(警告1的功能), foo
必须手动调用它。 遵循以下原则
function foo(j, f){
f();
}
编辑
因此,根据您的问题编辑,上面的内容看起来不太正确,除了您不是从直接引用函数而是从eval语句中获取函数。
像这样:
function foo(j, f){
f();
}
var s = "foo";
var j = 0;
eval(s)(j, function() {
alert(1);
})
这是一个工作场所
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.