javascript self或者that用法
2012-12-13 17:11 Li Qian 阅读(309) 评论(0) 收藏 举报<html> <script> var Cls = (function (clas){ function cla(){ var mem = 0; var self = this; this.fuc = function(){ alert(mem); fuc2(); } var fuc2 = function fuc2(){ alert(self);//显示结果为[object Object]表明是callee对象;如果是alert(this),结果为[object Window],this指向了Window对象 } } return cla; })(Cls || (Cls = {})); var c = new Cls(); c.fuc(); //c.fun2();//无法访问,fun2类似于私有方法 </script> </html>
按照惯例,我们给出一个私有的 self 参数。这个可以令对象对私有方法可见。这种做法是因为ECMAScript Language Specification中的一个错误,这个错误令 this 不能正确地对内部函数设置。
http://www.cnblogs.com/autocrat/articles/2816611.html