为什么要加上返回值的return f2,加上去有什么作用,不加又有什么作用

来源:7-1 [JavaScript]理解闭包

逸风4241167

2017-06-05 23:24

function f1(){

    var n=999;

    nAdd=function(){n+=1}

    function f2(){
      alert(n);
    }

    return f2;


写回答 关注

1回答

  • 0_0墨眉
    2017-06-07 11:44:27
    1. 加上return f2在调用函数f1时返回函数f2,不加则返回undefined;

    2. return f2  在调用f2是形成一个闭包,n在f1执行完后空间会被回收,但被f2捕获,内存空间得到保留,通过f2仍然可以被调用;

JavaScript深入浅出

由浅入深学习JS语言特性,且解析JS常见误区,从入门到掌握

281102 学习 · 1020 问题

查看课程

相似问题