读书人

javascript中为啥在匿名function函数后

发布时间: 2012-09-20 09:36:50 作者: rapoo

javascript中为何在匿名function函数后面还外加一个括号

alert("#3 a "+a); //456,通过var声明的a被this.a覆盖掉了

})();

alter("window.a"+window.a+" window.b"+window.b); //js error。但是奇怪的是在匿名函数以外,window对象并不存在属性a,b

//现实是: 自执行的匿名函数中通过this关键字修改到外部执行环境(对象)的属性后,在另外的匿名函数中可以访问到这些属性,但在匿名函数以外,这些属性确无法访问。
//问题是: 我还无法解释这种现象。想听听博主的高见。

</script>
</body>
</html> alert("#3 a "+a); //456,通过var声明的a被this.a覆盖掉了

})();

alter("window.a"+window.a+" window.b"+window.b); //js error。但是奇怪的是在匿名函数以外,window对象并不存在属性a,b

//现实是: 自执行的匿名函数中通过this关键字修改到外部执行环境(对象)的属性后,在另外的匿名函数中可以访问到这些属性,但在匿名函数以外,这些属性确无法访问。
//问题是: 我还无法解释这种现象。想听听博主的高见。

</script>
</body>
</html>

读书人网 >JavaScript

热点推荐