猿问

返回函数的函数

function a() { 

       alert('A!'); 

      return function(){ 

     alert('B!'); }; 

}


当直接访问 a( )时,只弹出 A!;如果再声明一个变量: var   good = a( );  然后再访问  good( ),此时弹出A!,再弹出 B! 。  这是什么原因呢?      // 而且访问  a( )( )  就等价于 good();

AllySu
浏览 1560回答 1
1回答

橋本奈奈未

这就是js闭包,js中函数也是对象,也可以当做返回值返回。
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答