Javascript 函数,传递参数

Javascript 函数,传递参数,javascript,function,variables,parameter-passing,Javascript,Function,Variables,Parameter Passing,这一次我似乎无法回到正轨。我只是将一个函数放在一个变量中,并希望稍后调用它,为它提供一个参数: var logic = function(itemId) { console.log(itemId); }; jQuery("#flipright").click(function() { logic.apply(1); } ); 这个打印“未定义” 我错过了什么?让它: jQuery("#flipright").click(function() { lo

这一次我似乎无法回到正轨。我只是将一个函数放在一个变量中,并希望稍后调用它,为它提供一个参数:

var logic = function(itemId) {               
    console.log(itemId);
};

jQuery("#flipright").click(function() {  logic.apply(1); } );
这个打印“未定义”

我错过了什么?

让它:

jQuery("#flipright").click(function() {  logic(1); } );
参考应用的

使其:

jQuery("#flipright").click(function() {  logic(1); } );
引用
应用

只需调用
逻辑(1)

如果要传递上下文,可以使用或:

如果要将上下文传递给另一个函数,则应使用
apply
call
——这意味着被调用函数中的
this
关键字将引用您传递给它的任何上下文。
下面是一个场景:

var logic = function(itemId) {               
    console.log(this,itemId);
};

jQuery("#flipright").click(function() {  
    // output to console the current jquery object and "1"
    logic.call(this,1);
});
只需调用
逻辑(1)

如果要传递上下文,可以使用或:

如果要将上下文传递给另一个函数,则应使用
apply
call
——这意味着被调用函数中的
this
关键字将引用您传递给它的任何上下文。
下面是一个场景:

var logic = function(itemId) {               
    console.log(this,itemId);
};

jQuery("#flipright").click(function() {  
    // output to console the current jquery object and "1"
    logic.call(this,1);
});