如何将JavaScript中的函数视为变量?

时间:2013-11-12 02:40:51

标签: javascript function variables

function b() {
   return "B";
}
function output(par){
    var l=par;
    alert(l);
}
output(b);

我得到的结果是:

function b() (
     return "B";
)

但是当我在函数外定义变量“l”时。喜欢:

function b() {
   return "B";
}
var l=b();
alert(l);
}

结果是“B”;

如何让函数在第二种情况下运行,但在函数内部,为什么不以同样的方式处理它?<​​/ p>

2 个答案:

答案 0 :(得分:3)

执行此操作时:

var l = b();

...您致电 b,并将结果分配给l。如果您希望l引用函数对象b,您只需说:

var l = b;

(同样,在您的output()函数中,如果您执行var l = par(),则会显示“B”。)

答案 1 :(得分:1)

在第一种情况下:将函数b作为参数发送到函数输出中。 在第二种情况下:使用“b()”调用函数b,所以此时变量l是除函数本身之外的B。