天天看點

JavaScript 面對對象知識點整理什麼是面對對象?封裝繼承多肽

面對對象

  • 什麼是面對對象?
    • 建立一個自定義對象
    • 調用自定義對象
    • this關鍵字
  • 封裝
  • 繼承
  • 多肽

什麼是面對對象?

面對對象是一種程式設計思想,以人固有的思維方式用來解決程式中的邏輯思維,便于程式的維護管理。

建立一個自定義對象

在我們生活中,汽車使我們的不可缺少的交通工具,假設設定汽車的對象,汽車有品牌,顔色,排量等等屬性

var obj = {
	carName = 'BWM',
	carColor = 'Black',
	carTemp = 1.8,
}
           

當然汽車也有一些行為動作,譬如啟動,加速,停車等等。

var obj = {
	carName = 'BWM',
	carColor = 'Black',
	carTemp = 1.8,
	carStar:function(){
		console.log('啟動');
	},
	carUpSpeed:function(){
		console.log('加速');
	},
	carStop:function(){
		console.log('停車');
	}
}
           

調用自定義對象

建立了一個自定義的汽車對象,我們可以去調用它,調用分三種情況:

第一種,在自定義對象外面調用對象

// 擷取汽車對象的品牌
obj.carName;
// 擷取汽車的啟動方法
obj.carStar();
           

第二種,在自定義對象裡面調用對象

// 擷取汽車對象的品牌
this.carName;
// 擷取汽車的啟動方法
this.carStar();
           

第三種,在内置對象裡調用對象

document.onkeydown=function(event){
	// 擷取汽車對象的品牌
	obj.carName;
	// 擷取汽車的啟動方法
	obj.carStar();
}
           

this關鍵字

以上三種方式用到了

this

關鍵字,

this

指向的是調用該函數的對象。

在第二種自定義對象

obj

裡面調用對象,此時

this

指向 自定義對象

obj

在第三種在内置對象

document

裡調用對象,此時

this

指向 内置對象

document

封裝

封裝,顧名思義就是将事物封裝成類,隐藏事物的屬性和方法的實作細節,僅對外公開接口。

譬如異常汽車類,将品牌,顔色,排量,啟動,加速,停車等等封裝成類。

// 申明父類
var Car = function(Name,Color,Temp){
	this.Name = Name;
	this.Color = Color;
	this.Temp = Temp;	
}
// 為父類添加共有屬性
Car.prototype.shopName = '旗艦店',
           

繼承

繼承就是子類可以使用父類的所有功能,樣就可以節約記憶體,減少代碼累贅。

// 申明子類
var Carinfo = function(){
	this.intr(){
		console.log(`this is Son`);
	}
}
// 繼承父類
Carinfo.prototype = new Car();
           

多肽

多态實際上是不同對象作用與同一操作産生不同的效果。

繼續閱讀