繁体   English   中英

使用参数作为数组调用javascript函数

[英]Call a javascript function with arguments as an array

我正在尝试从字符串中执行一个函数以及一个应该被视为多个参数的数组。

例:

var app = {
  bar : function(val1, val2, val4){
    console.log(val1+val2+val3);
  }
};

fn_name = "bar";
fn_args = ['one', 'two', 'three'];

app[fn_name](fn_args);

这段代码的问题是fn_args作为单个参数传递而不是作为单独的参数传播,是否有解决方法? 我仍然想动态传递fn_namefn_args

使用apply方法:

app[fn_name].apply(app, fn_args);

https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Function/apply

使用function.apply()

app[fn_name].apply(app, fn_args);

第一个参数是函数内部的上下文( this ),第二个是应该作为参数传递的数组。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM