4

这里有两个功能。

1) 使用“新”对象创建。

(
  function se(){
    var a=10;

    var t = function (){
        var that=this;
        alert(a);
        that.book= function (){
            alert(that);
        }
        that.book();
    }
    return new t();
  }()
);

2) 使用对象字面量方式

(
    function se(){
        var a=10;
        var f={
            init:function(){
                alert(a);
            }
        }                   
        f.init();
    }()
);

那么使用的最佳实践是什么?为什么?在第一个示例中使用“this”的目的是什么?

4

1 回答 1

1

这里的多个事物之间存在一些混淆。

您可能想阅读以下内容:

  • 关闭,
  • JavaScript 中的作用域,
  • 和基于原型的继承。
于 2012-06-08T06:14:54.070 回答