JavaScript里面的面向对象

1、JavaScript里面没有类,但是利用函数可以起到类似的作用,例如简单的构造方法,跟Python差别不大

    function f1(mame,age){
        this.Name = name;
        this.Age=age; //这是个构造方法,相当于Python类里面的self
        this.Func=function () {
            return this.Name + this.Age;
        };//函数是保存在每个对象里面的

    
    }

    obj1 = new f1('jay',18);
    obj2 = new f1('bob',18);
    obj3 = new f1('peter',18);
    obj4 = new f1('alex',18);

 

 

 

  为了合理使用内存,将类里面的方法放在类里面而不是对象里面,可以这样设置

    function f1(name,age){
        this.Name = name;
        this.Age=age; //这是个构造方法,相当于Python类里面的self

    }
        f1.prototype={
            Func:function () {
                return this.Name + this.Age
            }
        };
//        f1.prototype.Func=function () {
//            
//        }两种方法都可以



    obj1 = new f1('jay',18);
    ret = obj1.Func();
    console.log(ret);

  原理如图

 

posted @ 2017-03-21 20:05  蜗牛仔  阅读(147)  评论(0编辑  收藏  举报