建構函式設計模式:當我們使用new ***(),執行函式時,此時的函式變成了乙個類,返回結果叫做當前類的例項
普通函式執行
1.形成乙個新的私有作用域
2.形參賦值
3.變數提公升
4**自上而下之下(return的值就是要的結果)
建構函式執行
1.形成乙個新的私有作用域
2.形參賦值
3.變數提公升
4.**執行前,建構函式有自己的特殊操作:瀏覽器會在當前作用域中預設建立乙個物件資料型別的值會讓當前函式中的執行主體(this)指向建立的物件
5.**自上而下執行:this.***=***這裡操作是在給建立的物件增加屬性名和屬性值
6.**執行完成後,函式中沒有寫return,在建構函式模式中:瀏覽器會預設把建立的函式物件返回到函式外面
建構函式與普通函式的區別
在命名規則上,建構函式一般是首字母大寫,普通函式遵照小駝峰式命名法。在函式呼叫的時候 function fn 建構函式 1.new fn 2 建構函式內部會建立乙個新的物件,即f的例項 3.函式內部的this指向 新建立的f的例項 4.預設的返回值是f的例項 普通函式 1.fn 2.在呼叫函式的內部...
建構函式與普通函式的區別
不同點 1 普通函式如果內部沒有return的時候,返回的是undefined function fn console.log fn undefined 2 建構函式內部沒有return的時候,返回的是構造出來的物件 function fn console.log new fn fn new fn ...
建構函式與普通函式的區別
宣告上對比 1.普通的函式宣告需要帶有返回值和無返回值void這個關鍵字 2.建構函式定義的時候,不需要有返回值這一說。函式名對比 1.普通的函式,函式名可以遵循識別符號的規則,最好有意義函式名 2.建構函式名必須和當前類名保持一致 作用上對比 1.普通函式是為了修飾乙個物件的行為時,我們去定義函式...