1. 程式人生 > >js對象工廠函數與構造函數

js對象工廠函數與構造函數

關鍵字 div 函數 js對象 window 調用 return語句 png 首字母

轉自:http://www.cnblogs.com/Jener/p/5920963.html

★概述:

使用對象字面量,或者向空對象中動態地添加新成員,是最簡單易用的對象創建方法。然而,除了這兩種常用的對象創建方式,JavaScript還提供了其他方法創建對象。 ★使用工廠函數創建對象 我們可以編寫一個函數,此函數的功能就是創建對象,可以將其稱為“對象工廠方法”。 技術分享 ★ 定義對象“構造”函數 技術分享 註意點:對象構造函數首字母大寫;內部使用this關鍵字給對象添加成員;使用new關鍵字調用對象構造函數 ★ 對象的constructor屬性 使用對象構造函數創建對象,每個對象的constructor屬性都會引用這個構造函數;如下圖示, 技術分享
使用對象工廠函數創建對象,每個對象的constructor屬性引用Object();如下圖示, 技術分享 ★ 以 普通方式調用的“構造函數” 構造函數其實也是一個函數。不同之處在於調用它時,必須加一個“new”關鍵字,如果不加這個關鍵字,則對它的調用被認為是普通函數調用。 技術分享 註意,這裏的普通調用構造函數,在輸出window.name是輸出以當前的普通調用函數值。不理解的話,看圖吧。 技術分享 技術分享 對象構造函數與對象工廠方法的區別 1.對象構造函數中沒有顯示的對象創建代碼; 2.新對象應具備的屬性與方法通過this引用添加的; 3.對象構造函數中沒有return語句; 4.通常會把對象構造函數的首字母設置為大寫的,以區別普通函數。

js對象工廠函數與構造函數