在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問(wèn)答/HTML/ function B(a) { this.a = a; } 一個(gè)關(guān)于 構(gòu)

function B(a) { this.a = a; } 一個(gè)關(guān)于 構(gòu)造函數(shù)實(shí)例化 的面試題

function B(a) {  
    this.a = a;  
}  

console.log(new B());   // B{ a:undefined }

輸出 new B(),這不是輸出的是B函數(shù)的返回值嗎? 沒(méi)有返回值應(yīng)該結(jié)果是undefined啊,為什么輸出的會(huì)是函數(shù)本身?

回答
編輯回答
假灑脫

new運(yùn)算符
這些都是基礎(chǔ)的東西
用了new運(yùn)算符 肯定 不是跟平常調(diào)用函數(shù)一樣

2017年3月14日 02:15
編輯回答
朽鹿

我試了一下,并沒(méi)有輸出函數(shù)本身...

2017年6月26日 11:54
編輯回答
浪婳

結(jié)論:輸出的不是函數(shù)本身,而是類型為B的對(duì)象

你要知道new干了什么:
(1) 創(chuàng)建一個(gè)新對(duì)象;
(2) 將構(gòu)造函數(shù)B的作用域賦給新對(duì)象(因此 this 就指向了這個(gè)新對(duì)象)
(3) 執(zhí)行構(gòu)造函數(shù)中的代碼(為這個(gè)新對(duì)象添加屬性) ;
(4) 返回新對(duì)象。

2017年4月22日 15:15