JavaScript 面向对象

JavaScript  面向对象

  • this:this代指对象(python self)
  • 对象 = new 函数():创建对象:添加“new 函数()”相当与创建对象
  • 类名:prototype={方法} : 创建类原型

类:

function Foo(n){
    this.name = n;
    this.sayName = function(){
        console.log(this.name)
    }
}

var obj1 = new Foo('we');
obj1.name
obj1.sayNmae()

var obj2 = new Foo('wb');
obj2.name
obj2.sayNmae()

:obj1~2 对象内存里会重复调用this.sayName,从而增加内存损耗。
:创建obj对象并传入参数、obj1.name就是we。
:obj1.sayNmae() 执行方法 调用obj1的name等于we。


类原型:

function Foo(n){
    this.name = n;
}

# Foo的原型
Foo:prototype = {
    'sayName': function(){
    console.log(this.name)
    }
}

var obj1 = new Foo('we');
obj1.name
obj1.sayName()

var obj2 = new Foo('wb');
obj2.name
obj2.sayName()

注:每一个对象内只封装了一个name。
注:调用obj1.sayName()时会先找Foo类,然后在去Foo的原型里找sayName。


 

posted @ 2019-02-22 13:37  kevin.Xiang  阅读(157)  评论(0编辑  收藏  举报