詳解JS構(gòu)造函數(shù)中this和return
先看一段代碼,
function Foo(name,age){
this.name=name;
this.age=age;
}
var foo=new Foo("Tom",14);
foo.name;//Tom
foo.age;//14
使用構(gòu)造函數(shù)實例化發(fā)生的流程:
1.建立一個foo的空對象。
2.將構(gòu)造函數(shù)中的Foo的this指向?qū)ο骹oo。
3.foo的_proto_屬性指向Foo函數(shù)的prototype原型。
4.執(zhí)行構(gòu)造函數(shù)中的代碼。
相對于普通函數(shù),構(gòu)造函數(shù)中的this是指向?qū)嵗模胀ê瘮?shù)調(diào)用中的this是指向windows的。
構(gòu)造函數(shù)中如果加入了return的話,分兩種情況
function Foo(name,age){
this.name=name;
this.age=age;
return {name:"Jeff"}
}
var foo=new Foo("Tom",14);
foo.name;//Jeff
1.return的是五種簡單數(shù)據(jù)類型:String,Number,Boolean,Null,Undefined。
這種情況下,忽視return值,依然返回this對象。
2.return的是Object。
這種情況下,不再返回this對象,而是返回return語句的返回值。
總結(jié)
以上所述是小編給大家介紹的JS構(gòu)造函數(shù)中this和return,希望對大家有所幫助,如果大家有任何疑問歡迎給我留言小編會及時回復(fù)大家的!
相關(guān)文章
js 將多個對象合并成一個對象 assign方法的實現(xiàn)
這篇文章主要介紹了js 將多個對象合并成一個對象 assign方法的實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-09-09
jquery ajax應(yīng)用中iframe自適應(yīng)高度問題解決方法
很多管理系統(tǒng)中,都使用iframe進(jìn)行信息內(nèi)容的展示方式,或者作為主菜單的鏈接展示內(nèi)容。使用iframe的問題就是自適應(yīng)高度的問題2014-04-04
javascript面向?qū)ο蟪绦蛟O(shè)計實踐常用知識點總結(jié)
這篇文章主要介紹了javascript面向?qū)ο蟪绦蛟O(shè)計實踐常用知識點,結(jié)合實例形式總結(jié)分析了javascript面向?qū)ο蟪绦蛟O(shè)計中原型引用類型、屬性、方法相關(guān)操作技巧與注意事項,需要的朋友可以參考下2019-07-07
elemetUi 組件--el-upload實現(xiàn)上傳Excel文件的實例
這篇文章主要介紹了elemetUi 組件--el-upload實現(xiàn)上傳Excel文件的實例的相關(guān)資料,希望通過本文大家能夠?qū)崿F(xiàn)這樣的功能,需要的朋友可以參考下2017-10-10
Bootstrap教程JS插件滾動監(jiān)聽學(xué)習(xí)筆記分享
這篇文章主要為大家分享了Bootstrap教程JS插件滾動監(jiān)聽學(xué)習(xí)筆記,內(nèi)容很詳細(xì),感興趣的小伙伴們可以參考一下2016-05-05

