js里调用函数时,函数名带括号与不带括号的区别


function test(){
return 1;
}
var a=test;
console.log(a);//输出[Function: test]
var b=test();
console.log(b);//输出1


函数名是一个对象,而对象是保存内存中,函数名是指向这个对象的指针。

var a=test便是这个函数对象的指针给a。

var b=test()后面加上圆括号就表示立即调用,范围函数的返回值。还可以在函数体后面加圆括号表示立即调用。
————————————————
版权声明:本文为CSDN博主「迁就i」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_36619427/article/details/80528697

猜你喜欢

转载自www.cnblogs.com/Alon-Td/p/12025390.html
今日推荐