JavaScript作为表达式运行

JavaScript作为表达式运行,javascript,Javascript,我计划使用JavaScript函数作为表达式,但没有成功?谁能帮帮我吗。(环境:谷歌铬35.0) 现在输出为: 输入-函数(){return“HELLO”;} 而不是: 输入-你好 定义时: var f1 = function(inp){console.log("INPUT - ", inp);} 变量f1引用函数。 要调用该函数,请直接调用f1: f1($param). 如果将函数作为参数传递,并希望调用此函数,则必须将代码更改为: var f1 = function(inp){conso

我计划使用JavaScript函数作为表达式,但没有成功?谁能帮帮我吗。(环境:谷歌铬35.0)

现在输出为:

输入-函数(){return“HELLO”;}

而不是:

输入-你好

定义时:

var f1 = function(inp){console.log("INPUT - ", inp);}
变量f1引用函数。 要调用该函数,请直接调用f1:

f1($param).
如果将函数作为参数传递,并希望调用此函数,则必须将代码更改为:

var f1 = function(inp){console.log("INPUT - ", inp());}
f1(function(){return "HELLO";})

这里是一个有效的。

您传递的是整个函数引用,而不是计算函数所需的值:
console.log(“INPUT-”,inp())
“//函数表达式也可以用作其他函数的参数:data.sort(函数(a,b){return a-b;});礼节:JavaScript:DefinitiveGuide,第6版是的,但当noboby调用函数表达式时,它们是无用的;)@Pradeep_Evol当然这只适用于函数表达式,您可以使用
typeof
检查类型。
var f1 = function(inp){console.log("INPUT - ", inp());}
f1(function(){return "HELLO";})