初學js的物件導向程式設計與閉包

2021-09-24 20:20:25 字數 473 閱讀 1630

下面利用閉包特性來封裝乙個物件student,運用物件student儲存乙個學生的資訊,資訊包括姓名,性別和年齡,這些資訊不可被外部直接訪問,只能通過物件的方法獲取 。

1建立乙個建構函式student,student中使用字面式定義乙個空物件privatestore,用來存放私有的資料。

2. student中定義乙個函式_set , 用來設定學生的資訊 (姓名,性別和年齡) 。

3. student中定義乙個函式_get , 用來獲取資訊 。

4. student中定義乙個方法get ,方法中返回函式_get。

5. student中定義乙個方法set, 方法中返回函式_set。

6.例項化物件student,並呼叫set方法為student新增資訊 。如 ( "小明", "男", 23 )

7.呼叫get方法輸出student的所有資訊。

理解閉包 js物件導向程式設計

先看一段 function a inc inc a 控制台輸出1,再輸出2 簡單吧。再來看一段 function a var c new a c.inc 控制台輸出1 c.inc 控制台輸出2 簡單吧。什麼是閉包?這就是閉包!有權訪問另乙個函式作用域內變數的函式都是閉包。這裡 inc 函式訪問了建構...

python中物件導向程式設計閉包

什麼是閉包?閉包指的是乙個擁有許多變數和繫結了這些變數的環境的表示式,通常是乙個函式,因而這些變數也是該表示式的一部分,閉包一詞 於要執行的 塊和為自由變數提供繫結的計算環境兩者的結合 在乙個外部函式中的乙個內部函式,內部函式運用了外部函式的臨時變數,並且外部函式返回值是內部函式的引用,這樣就構成乙...

閉包和物件導向設計

物件以方法的形式包含了過程,而閉包則是在過程中以環境的形式包含了資料。通常用物件導向思想能實現的功能,用閉包也能實現。var extent function var extent extent extent.call 輸出 1 extent.call 輸出 2 extent.call 輸出 3換成物...