JavaScript 面向對象python
類:函數
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。this
類原型:spa
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。prototype