我试图在一个函数中调用一个函数并不是什么大问题,但由于某些原因我不明白为什么我不能通过这个逻辑调用一个函数:
function func1(futurefunc){
futurefunc();
}
function func2(){
return 3+3;
}
func(func2);
现在上面代码的结果是未定义的。但是当我放置:func(alert)
时,会调用alert参数。我不明白为什么第二种情况正在运行,第一部分没有打印返回值,在这种情况下是6。
但是当我尝试以下内容时:
function func1(futurefunc){
return futurefunc();
}
代码似乎提供了正确的值,在这种情况下为6。任何明确的解释。我希望我没有遗漏任何东西。
答案 0 :(得分:0)
第一种情况,func1只调用futurefunc()而不return
,所以打印undefined
。
当您通过时,会调用警报,警报,然后您会看到对话框。
第二种情况,func1调用futurefunc并返回其结果,因此打印出6。
这里没有什么难以理解的。