【发布时间】:2016-04-09 16:03:04
【问题描述】:
我有一个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);
}
}
【问题讨论】:
标签: javascript function syntax