[英]how to call a function as argument in javascript
我正在学习javascript,我想知道是否有可能使用这种lambda函数
function operation (function f, num1, num2){
f.call(num1, num2);
}
operation((a,b)=>{return a+b}, 2,3);
我在第1行有意外的令牌函数 ,对于我想想的函数f ,是否有某种方法可以使其工作?
尝试这个:
function operation (f, num1, num2){
f(num1, num2);
}
operation((a,b)=>{return a+b}, 2,3);
JavaScript是非类型化语言。 如果要使用call
,请尝试以下操作:
function operation (f, num1, num2){
f.call(this, num1, num2);
}
operation((a,b)=>{return a+b}, 2,3);
JavaScript函数参数定义没有类型。 从第1行的f
之前删除关键字function
。
是的,只需删除该function
:
function operation (function f, num1, num2){
f.call(num1, num2);
}
operation((a,b)=>{return a+b}, 2,3);
但是,这将使用this
-context num1
和第一个参数num2
调用您的函数。 如果要在不覆盖this
上下文的情况下调用该函数,请使用()
调用:
f(num1, num2)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.