1. 程式人生 > >JavaScript踩坑筆記04---建構函式、例項、物件

JavaScript踩坑筆記04---建構函式、例項、物件

建構函式:

建構函式是函式的一種形式,它是一個抽象的概念,它的作用就是定義一些公共的特性。
簡單點說,建構函式就是一個模版,由這個模版製造的實體,會具有模版規定好的特性。

// 我們習慣將建構函式的函式名以駝峰法命名
function Person(name) {
	// this指當前模版,this.xxx指當前模版的特性
	this.name = name;
	this.work = function () {
		console.log("刪庫跑路...");
	};
}

上面定義了一個建構函式,它是定義了人類的模版,每個人都有姓名,都要工作,根據這個模版會創建出無數個人的實體。
JavaScript中,通過new關鍵字來建立實體。

var person = new Person("tom");

我們通過new關鍵字,建立了一個Person模版下的實體person,並給他起名為tom,於是這個實體就有了該模版的特性。

person.work(); // 刪庫跑路...

實體的概念並不抽象,他是實實在在存在的,例如,王二丫,李狗蛋。
這就是面向物件的思維,將一類實體具有的特性,封裝成一個模版。
這個模版稱之為類。

例項、物件:

在JavaScript中,由建構函式建立的實體,我們稱之為例項。
例項,我們又稱之為物件,例項中的變數,我們稱之為屬性,例項中的函式,我們稱之為方法。
例項和物件其實是等價的,只是叫法不同。
可以這麼理解,程式中的例項,應用到生活中,就叫做物件。
同理,程式中的變數,應用到生活中,就叫做屬性,程式中的函式,應用到生活中,就叫做方法。
在建立person例項的時候,經歷了幾個步驟。

  1. 建立一個新物件。
  2. 將建構函式的作用域賦給新物件(this指向person),新物件就擁有了模版的特性。
  3. 為這個新物件新增屬性。
  4. 返回新物件,用person變數接收。

個人學習總結,歡迎批評指正