javascript闭包内部的函数一定要通过return来访问和返回函数内部的变量吗?

 我来答
匿名用户
2012-07-09
展开全部
不一定~!
例如:
var a;
function b(){
var i=0;

a=function(){ alert(i);}

};
b();//结果是什么?执行完就生成了一个 全局变量a引用的闭包,a引用的函数始终能取到b()内部变量i的值。没用return 访问和返回吧~!
追问
但是这样a的意义又体现在哪里呢?
追答
a的作用就是产生闭包~!类似的还有事件如,函数内定义的window.onclick=function(){}等
dongrenfei21
2012-07-09 · TA获得超过2926个赞
知道小有建树答主
回答量:1264
采纳率:0%
帮助的人:1204万
展开全部
1.访问函数内部的变量不需要return:
var bar;
function foo(x){
bar = function(){ console.log(++x); }
};
foo(5);
bar(); // 结果是6

2.返回函数内部的变量当然要用return
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式