Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/87.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jquery-使用.call()时传递参数_Javascript_Jquery - Fatal编程技术网

Javascript jquery-使用.call()时传递参数

Javascript jquery-使用.call()时传递参数,javascript,jquery,Javascript,Jquery,在Javascript中使用.call()时,如何向函数传递参数 当我传递参数时,它们在回调函数中总是未定义的 编辑(示例): 我的插件中将有一个选项对象: var options = { errorCallback : function( errors ) {} } 我将从我的插件中这样调用它: var errors = "Test error list"; configs.errorCallback.call(errors); 我会像这样初始化我的插件 $('#plugin-ele

在Javascript中使用
.call()
时,如何向函数传递参数

当我传递参数时,它们在回调函数中总是未定义的

编辑(示例):

我的插件中将有一个选项对象:

var options = {

errorCallback : function( errors ) {}

}
我将从我的插件中这样调用它:

var errors = "Test error list";
configs.errorCallback.call(errors);
我会像这样初始化我的插件

 $('#plugin-element').myPlugin(
       { 
           'errorCallback' : function errorrCallbackFunction( errors ) {
                   console.log(errors) //always undefined
               }
       }

调用的第一个参数是函数的“this”。如果要将变量作为参数传递,请从第二个变量开始

configs.errorCallback.call(undefined, errors);
以下是文件:

这是没有必要的。如果要设置函数调用的上下文,只需使用
call
。这意味着回调中
this
的值

如果您不想设置
,则可以像通常那样调用函数:

configs.errorCallback(errors);
如果要设置
,则需要将其设置为
调用
的第一个参数。后续参数将传递给函数

例如:

var configs = {
    errorCallback : function( errors ) {}
};
configs.errorCallback.call(configs, errors);

errorCallback
中,您可以使用关键字
this

访问
configs
,您能举例说明您所做的哪些操作不起作用吗?回调函数?哪个回调函数?call()不是特定于jQuery的,它是一个JavaScript函数(或者更准确地说,它是函数对象的一个方法)。
var configs = {
    errorCallback : function( errors ) {}
};
configs.errorCallback.call(configs, errors);