js中,通常把用類創(chuàng)建對(duì)象的過(guò)程稱為實(shí)例化,實(shí)例化對(duì)象就是創(chuàng)建對(duì)象的過(guò)程。“類”是抽象的,沒(méi)有辦法操作它或使用它的方法和屬性,只有把這個(gè)類實(shí)例化成為一個(gè)對(duì)象,才可去調(diào)用它的一系列方法和屬性;因此,實(shí)例化對(duì)象就是由抽象到具體的過(guò)程。
本教程操作環(huán)境:windows7系統(tǒng)、javascript1.8.5版、Dell G3電腦。
1.什么是構(gòu)造函數(shù)
構(gòu)造函數(shù) ,是一種特殊的方法。主要用來(lái)在創(chuàng)建對(duì)象時(shí)初始化對(duì)象, 即為對(duì)象成員變量賦初始值,總與new運(yùn)算符一起使用在創(chuàng)建對(duì)象的語(yǔ)句中。
這是百度百科的解釋,解釋的很書(shū)本化但意思表達(dá)的還是很清楚的。下面請(qǐng)看小例子:
var request = new XMLHttpRequest();
這句表達(dá)式是我們?cè)谑褂肁JAX技術(shù)時(shí)創(chuàng)建request對(duì)象時(shí)經(jīng)常用到的。那么我們可以清楚的看到 “new XMLHttpRequest();” 這句話就是一個(gè)標(biāo)準(zhǔn)的構(gòu)造函數(shù)!我們 “var” 聲明了一個(gè) “request” 對(duì)象,用構(gòu)造函數(shù) “new XMLHttpRequest();” 來(lái)初始化這個(gè) “request” 對(duì)象為它賦初始值。所以我們可以知道:“與 ‘new’ 運(yùn)算符一起使用用來(lái)創(chuàng)建對(duì)象并初始化對(duì)象的‘函數(shù)’就是構(gòu)造函數(shù)”。
比如我們常見(jiàn)的聲明數(shù)組就是標(biāo)準(zhǔn)的構(gòu)造函數(shù):var array = new Array();
2.什么是實(shí)例化對(duì)象
var request = new XMLHttpRequest();
在面向?qū)ο蟮木幊讨校ǔ0?span style="color: rgba(51, 102, 255, 1)">用類創(chuàng)建對(duì)象的過(guò)程稱為實(shí)例化。
上面我用紅色和藍(lán)色將解釋的重點(diǎn)標(biāo)了出來(lái)。說(shuō)白了,實(shí)例化對(duì)象就是創(chuàng)建對(duì)象的過(guò)程!
那么什么是“類”呢?根據(jù)字面理解我們可以理解為“類型”。比如“蛋糕”,它是一個(gè)甜品的分類,也就是一個(gè)類型;那么起司蛋糕則是甜品中蛋糕這個(gè)分類的具體的個(gè)體,也就是對(duì)象。
我們知道在程序語(yǔ)言中,“類”是抽象的,我們沒(méi)有辦法來(lái)操作它或使用它的方法和屬性,只有把這個(gè)類實(shí)例化成為一個(gè)對(duì)象,我們才可以去調(diào)用它的一系列方法和屬性。其實(shí)這個(gè)也很好理解,在生活中抽象的東西我們沒(méi)有辦法看到它或者捕捉到它,那么自然我們也沒(méi)有辦法去使用它的一些功能,只有將抽象的東西具體到一個(gè)個(gè),個(gè)體或?qū)嶋H的對(duì)象,我們才能清楚的理解或者認(rèn)識(shí)它;編程亦是如此。因此,實(shí)例化對(duì)象就是由抽象到具體的過(guò)程,這個(gè)過(guò)程就叫實(shí)例化。