本帖最后由 zqz49877 于 2013-09-21 15:48:11 编辑

解决方案 »

  1.   

    你这个写法不用new也行。。 
     
    var a = obs();
    a.t1();
      

  2.   

    new是什么东西,为什么要用new.
      

  3.   

    你new的不是对象,是构造函数,new + 构造函数生成对象。
    如果单就调用方法而言,确实不必用new。
    new一般用在“js使用原型和this关键字实现面向对象”的过程中。
      

  4.   

    function obs() {
        var a= 1;
        return {
            t1:function() {
                alert(a);
            }
        }
    }
     
    var a = new obs();
    alert(a instanceof obs);
    alert返回false,说明a不是obs实例,即不需用new
      

  5.   

    那是面向对象的写法,类似于java中的class用法。
      

  6.   

    new 表示调用构造函数创建了一个对象,不new的话相当于一个普通的函数