由于赋值运算符实际上可以将变量赋值给值/对象,为什么不能将变量赋值给函数。
例如:当我指定var b = 5;当我创建一个实例时,b变成5,对象也是如此。 var b = c;
然而,当我指定var b = func();它给了我结果或回报。为什么这样做,如何在不使用闭包或工厂的情况下制作复制函数?
答案 0 :(得分:5)
()
个字符是表示“调用函数”的语法。
删除它们,你将得到对函数对象的引用,而不是调用它并获得返回值。
function func () {
alert(1);
}
var b = func;
b();
setTimeout(func, 2000);