gpt4 book ai didi

javascript - 将动态参数添加到函数,该函数的参数作为参数传递给当前函数

转载 作者:行者123 更新时间:2023-12-03 12:03:02 30 4
gpt4 key购买 nike

我将介绍我正在尝试做的事情的场景:

我将带有参数的函数作为参数传递给函数。该函数将向传递的函数添加一个附加参数,然后调用函数。

例如:

funcA(function(){ funcB("add Me") })    // call to funcA

funcA : function( fn ){
var additionalParams = "add Me too"
}

funcB : function( str1,str2){ //gets me both strings }

我看了here并认为这就是我想要的,但没有帮助。

这是jsfiddle我试过了。

最佳答案

没有必要调用apply方法。只需在传递给 funcA 的函数上声明一个参数

funcA = function( fn ){ 
var additionalParams = "add Me too";
fn(additionalParams);
}

funcA(function(str){
funcB("add Me", str);
});

funcB = function( str1,str2){ //gets me both strings };

更新

你的jsfiddle代码像我说的那样修改了。

function appendArguments(fn) {
var slice = Array.prototype.slice.call.bind(Array.prototype.slice),
args = slice(arguments, 1);
return function (t) {
return fn(t);
};
}

var bar = appendArguments(function(t){foo(1, t)});
bar(2);



function foo (x,y){
alert(x);
alert(y);
}

你自己试试吧。它对我有用。

关于javascript - 将动态参数添加到函数,该函数的参数作为参数传递给当前函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25319739/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com