将一个函数及其参数传递给另一个函数以执行它的语法是什么
What is the syntax to pass a function and it arguments to another function to execute it?
我有一个foo
函数:
var foo = function(input) {
console.log(input)
}
和一个bar
函数:
var bar = function(fn, condition) {
if (condition) {
fn();
}
}
我想传递foo
作为bar
的自变量,如:bar(foo, true);
问题是执行参数时必须调用foo
。如果我使用bar(foo('param'), false);
,foo
将在bar
启动之前执行并检查条件。
在JavaScript语法方面有更好的解决方案吗
我知道我可以将bar
函数修改为以下内容,但我不想修改bar
实现:
var bar = function(fn, fnParam, condition) {
if (condition) {
fn(fnParam);
}
}
您可以使用以下格式:bar(function() { foo(param); },false)
,除非您需要foo函数中的元信息,如name,在这种情况下,您需要使用function(fn, paramArray, condition)...
方法
请注意,使用新的Javascript功能,如Arrow函数,您可以使用bar(()=>foo(param),false)
编写相同的内容,但并非所有浏览器都支持这种语法。
相关文章:
- 如何在JQuery函数中定义一个值,然后调用另一个函数并使用该值
- 是否可以将一个函数输入连接到另一个函数调用的文本
- 在另一个函数中使用变量this
- 在另一个函数成功结束后调用该函数
- 多次调用另一个javascript函数中的javascript函数
- 使用JS函数来使用另一个函数的语法?node.js
- 嵌套到另一个函数中的Fancybox函数;不起作用
- 如何从onclick函数设置全局变量并将其传递给另一个JS文件
- javascript函数将数据添加到屏幕,但随后被另一个函数覆盖
- 另一个Ajax函数触发的Ajax函数不起作用
- 如何从另一个处理程序内部取消JavaScript事件处理程序函数的执行
- 如何在不预定义的情况下将javascript函数传递到另一个函数中
- 从另一个函数获得$this值
- 如何记录调用另一个函数的函数的返回值
- 它在另一个函数中嵌套后不会输出文本
- 如何将自动完成的值传递到另一个函数中
- 将一个函数作为参数传递给javascript中的另一个函数
- 同一事物的两个函数,一个崩溃,另一个不崩溃,为什么
- 从另一个函数延迟解析的返回
- 多次调用promise函数,直到另一个promise函数满足条件