标签: dynamic-function

如何使用哈希在Perl中创建回调函数(调度表)?

我想调用一个动态调度其他函数的主控制器函数,如下所示:

package Controller;

my %callback_funcs = ();

sub register_callback{
   my ($class,$callback,$options) = _@;
   #apppend to %callback_funcs hash ... ?
}

sub main{
%callback_funcs = ( add => 'add_func', rem => 'remove_func', edit => 'edit_func');  
  while(<STDIN>){
     last if ($_ =~ /^\s*$/);
     if($_ == 'add' || _$ == 'rem' || _$ == 'edit'){
        $result = ${callback_funcs['add']['func']}(callback_funcs['add']['options']);
     }
  }
}

sub add_func{
...
}
Run Code Online (Sandbox Code Playgroud)

一个警告是sub在其他模块中定义,所以回调必须能够引用它们...而且我很难让哈希正确!

perl hash function callback dynamic-function

3
推荐指数
3
解决办法
9243
查看次数

Javascript:将局部变量传递给动态创建的函数,该函数是另一个函数内的参数

我正在使用具有以下参数化的函数(无法更改):

my_function(data, callback_function(results, status) {});
Run Code Online (Sandbox Code Playgroud)

我需要将其他信息传递给callback_function,这些信息无法添加到'data'(callback_function使用)或'results'或'status'.具体来说,此信息是my_function调用所在的for循环的计数器.

为此,我在callback_function体内包含对计数器的引用:

for(var i = 0; i < 10; i++) {

  var data = 'cannot modify this data';

  my_function(data, function (results, status) { alert(i); });

}
Run Code Online (Sandbox Code Playgroud)

不幸的是,i的最终值(在这种情况下为9)被打印10次.预期的行为是针对要打印的循环(0到9)中的每个i值.

动态函数是否有可能访问其范围之外的变量,但是在它们被定义的范围内?

javascript parameter-passing dynamic-function

3
推荐指数
1
解决办法
4427
查看次数

python-如何动态创建一个基于从文件中读取的字符串的名称的函数?

假设我有一个包含字符串“ unpredictable_words”的文件。我想读这个字符串,然后定义一个函数,如下所示:

def test_unpredictable_words(self):
    do_important_stuff()
Run Code Online (Sandbox Code Playgroud)

然后,我想将此函数注入到类定义中,以便可以在此类的任何实例上调用此函数。

我该怎么做?

我稍微看了一下这个答案-https: //stackoverflow.com/a/8160676/1701170-但我认为它并不能满足我的要求,或者至少我无法理解正在发生的事情。

python dynamic-function

3
推荐指数
1
解决办法
4171
查看次数

调用变量jQuery函数

我已经看过如何function通过使用调用变量javascript window[]().

是否可以调用变量jQuery function?如果是这样,怎么样?

通常,我只需要三元素来翻转可见开关,将许多代码行刷成1就很方便.例如,在一个内部$.aja() success:

if(msg.length > 0){
    $("#gridViewContainer").slideDown()
}
else{
    $("#gridViewContainer").slideUp()
}
Run Code Online (Sandbox Code Playgroud)

这可能是一个糟糕的例子,因为boolean可能会传递给slide()某个东西,但是我想在上面的链接问题中使用这个概念.

这不适合我:

$("#gridViewContainer")[((msg.length > 0)?'slideDown':'slideUp')]()
Run Code Online (Sandbox Code Playgroud)

javascript jquery dynamic-function

3
推荐指数
1
解决办法
3429
查看次数

动态函数调用Angular 2

我在变量中有函数名称,我在按钮的单击事件上分配该变量.但它不起作用.任何帮助?

@Component({
  selector: 'my-app',
  template: `
    <div>
    <h2>Function name is: {{FunctionName}}</h2>
    <input type="button" value="click here" (click) = [FunctionName]()>
    </div>
    <p>{{value}}</p>
  `,
})
export class App {
  FunctionName:string;
  value: string;
  constructor() {
    this.FunctionName = 'clickFunction'
  }

  clickFunction(){
    this.value = "button clicked";
  }
}
Run Code Online (Sandbox Code Playgroud)

这是代码

Plunker代码

dynamic-function typescript angular

3
推荐指数
1
解决办法
6777
查看次数

mule 4 中的动态函数调用

我有多种功能:

fun testadd(payload) = 
({
addition: payload.value1 as Number + payload.value2 as Number
})

fun testsub(payload) = 
({
substraction: payload.value1 as Number - payload.value2 as Number
})

fun testmultiply(payload) = 
({
multiplication: payload.value1 as Number * payload.value2 as Number
})
Run Code Online (Sandbox Code Playgroud)

我想根据“操作”属性/元素的值动态调用该函数。假设如果“Operation”=“testadd”则调用testadd函数, 如果“Operation”=“testsub”则调用testsub函数

输入 :

{
"value1" : 10,
"value2" : 20,
"Operation" : "testadd"
}
Run Code Online (Sandbox Code Playgroud)

mule dynamic-function dataweave mulesoft mule4

1
推荐指数
1
解决办法
664
查看次数

如何在Javascript中使用for调用动态命名的方法

我有两个动态命名的JavaScript函数..

function a1(){
   //some codes
}

function a2(){
   //some codes
}

function a3(){
   //some codes
}
Run Code Online (Sandbox Code Playgroud)

这些函数上面由PHP生成肯定..

<?php 
  for($i = 1; $i <= $load_period->count; $i++){ 
?>
  <script type="text/javascript">
  function a<?php echo $i;?>(){
     //javascript functions
  }
  </script>
<?php 
  } 
?>
Run Code Online (Sandbox Code Playgroud)

现在我必须调用这两个函数..

for(var i= 1; i <= 3; i++){
   // here the solution code .. 
   // doesn't work >> a+i+();
}
Run Code Online (Sandbox Code Playgroud)
  • 注意1:它不适用于"a + i +();" .
  • 注2:我不想使用"EVAL"语法

谢谢你的解决方案..

javascript jquery dynamic-function

0
推荐指数
1
解决办法
88
查看次数