一个js的有关问题,大家回答一上呀
一个js的问题,大家回答一下呀JScript codefunction f1(){var n 999nAdd function(){n++}function f2
一个js的问题,大家回答一下呀
JScript codefunction f1(){ var n = 999; nAdd = function(){ n++; } function f2(){ return n; } return f2;}
请问这里下面的return f2 为什么不是return f2()
[解决办法]return f2是返回f2函数,return f2()返回的是f2函数的返回值。
[解决办法][解决办法]查查关于js闭包的看看就知道了http://zhidao.baidu.com/question/317091269.html
[解决办法]这是js闭包啊
闭包规定返回的函数不能含有return语句
也就是说如果return f2(),就会是return return n,这样是不允许的
如果是return f2 就相当与返回一个函数,这个函数语法是return n.
闭包确实挺难理解的
建议楼主多看些教材多看些例子
我也是刚刚接触 共同加油。