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

示例代码:

<span style="font-size:18px;">function hi(){ 
 var a = 1; 
 return function(){
 console.log(a++);
 }; 
};   
var aaa = hi();
var bbb = hi;
</span>

如以上代码:

aaa 是将 hi() 的运行结果赋值给它,即 return 返回的匿名函数,此时有一个闭包,则每次调用 aaa 时都访问的同一个 a,aaa() 第一次运行结果为 1,第二次为2

而 bbb 将是将 hi 这个函数名赋值给它,则调用 bbb() 后返回一个函数表达式,即function(){console.log(a++)};

以上这篇浅谈js里调用函数时,函数名带括号和不带括号的区别就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持呐喊教程。