詳解JS構造函數(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
使用構造函數(shù)實例化發(fā)生的流程:
1.建立一個foo的空對象。
2.將構造函數(shù)中的Foo的this指向對象foo。
3.foo的_proto_屬性指向Foo函數(shù)的prototype原型。
4.執(zhí)行構造函數(shù)中的代碼。
相對于普通函數(shù),構造函數(shù)中的this是指向實例的,而普通函數(shù)調(diào)用中的this是指向windows的。
構造函數(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語句的返回值。
總結
以上所述是小編給大家介紹的JS構造函數(shù)中this和return,希望對大家有所幫助,如果大家有任何疑問歡迎給我留言小編會及時回復大家的!
相關文章
js 將多個對象合并成一個對象 assign方法的實現(xiàn)
這篇文章主要介紹了js 將多個對象合并成一個對象 assign方法的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-09-09jquery ajax應用中iframe自適應高度問題解決方法
很多管理系統(tǒng)中,都使用iframe進行信息內(nèi)容的展示方式,或者作為主菜單的鏈接展示內(nèi)容。使用iframe的問題就是自適應高度的問題2014-04-04elemetUi 組件--el-upload實現(xiàn)上傳Excel文件的實例
這篇文章主要介紹了elemetUi 組件--el-upload實現(xiàn)上傳Excel文件的實例的相關資料,希望通過本文大家能夠實現(xiàn)這樣的功能,需要的朋友可以參考下2017-10-10Bootstrap教程JS插件滾動監(jiān)聽學習筆記分享
這篇文章主要為大家分享了Bootstrap教程JS插件滾動監(jiān)聽學習筆記,內(nèi)容很詳細,感興趣的小伙伴們可以參考一下2016-05-05