小谢的Blog — 认真生活 快乐工作 专注Web前后端开发|移动平台
var n = 2; var showNumber = function(){ n = 1; alert(n); } (function(){ n=3; alert(n); })()
你能说出alert出的内容并解释其原因吗?
我以为alert输出会是3的。但在浏览器运行结果是1,并且最后的匿名函数似乎根本没运行。能说说原因吗?
var showNumber = function(){ n = 1; alert(n); } 这个后面忘了分号吧 – -
嗯 你是对的
刚试了一下,弹出1,但是会报错,是因为showNumber的匿名函数后面没有用;来结束,导致下面的出错了,加上;之后就正常了,这是弹出的结果就是3了
Name (required)
Mail (will not be published) (required)
Website
我以为alert输出会是3的。但在浏览器运行结果是1,并且最后的匿名函数似乎根本没运行。能说说原因吗?
var showNumber = function(){
n = 1;
alert(n);
}
这个后面忘了分号吧 – -
嗯 你是对的
刚试了一下,弹出1,但是会报错,是因为showNumber的匿名函数后面没有用;来结束,导致下面的出错了,加上;之后就正常了,这是弹出的结果就是3了