JS 普通函式與建構函式的區別

2021-09-29 03:56:23 字數 835 閱讀 5533

在命名規則上,建構函式一般是首字母大寫,普通函式遵照小駝峰式命名法。

建構函式new:

new base()會執行什麼?

在函式呼叫的時候:

function fn()

建構函式:

1. new fn( )

2 .建構函式內部會建立乙個新的物件,即f的例項

3. 函式內部的this指向 新建立的f的例項

4. 預設的返回值是f的例項

普通函式:

1. fn( )

2. 在呼叫函式的內部不會建立新的物件

3. 函式內部的this指向呼叫函式的物件(如果沒有物件呼叫,預設是window)

4. 返回值由return語句決定

建構函式的返回值:

有乙個預設的返回值,新建立的物件(例項)

當手動新增返回值後(return語句):

1. 返回值是基本資料型別–>真正的返回值還是那個新建立的物件(例項)

2. 返回值是複雜資料型別(物件)–>真正的返回值是這個物件

function

foo(

) console.

log(

this);

//window

return

true;}

function

foo2()

;}var f1 =

foo();

console.

log(f1)

;// true

<

/script>

建構函式與普通函式的區別

在命名規則上,建構函式一般是首字母大寫,普通函式遵照小駝峰式命名法。在函式呼叫的時候 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.普通函式是為了修飾乙個物件的行為時,我們去定義函式...