摘要:那么下面的代碼呢在這里在的前面添加了,這個函數就變成了一個構造函數,是一個由構造器創建的一個實例,所以在這里指向了
請問下面代碼中的this值指向的是全局對象還是對象o?
function F () { function C() { return this; } return C(); } var o = new F(); console.log(o.constructor.name); // Object
這里的this指向全局對象,因為 C() call without new。
這里用正常的方式調用的函數 C() ,所以this指向全局對象。
那么下面的代碼呢?
function F () { function C() { console.log(this); // C {} return this; } return new C(); } var o = new F(); console.log(o.constructor.name); // C
在這里在 C() 的前面添加了 new ,這個函數就變成了一個構造函數,this 是一個由 C() 構造器創建的一個實例,所以在這里 this 指向了o
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/80751.html
摘要:原文牛客上有這么一道的題目。先來分析一下題目,和都從來,為什么同名的屬性值不一樣可以看出,是對這個函數的調用方式不一樣,是函數的調用結果,而則是作為構造函數調用的結果。所以這題的重點應該是如何區分函數調用和構造函數調用。 原文:http://blog.e10t.net/talk-abo... ??蜕嫌羞@么一道 JavaScript 的題目。 //填寫內容讓下面代碼支持a.name = ...
摘要:題目原題目來源于一個網友的問答補充代碼我有個我有個分析題目希望生成一個新的構造函數,繼承于。盡量不要更改題目表達出希望有方法實現構造函數繼承,又需要原型繼承。的指向顯然要改成指向子類構造函數中的。 題目 原題目來源于一個網友的問答 var A = function() { this.name = apple; } A.prototype.getName = function()...
摘要:感覺這個題目涉及的基礎知識內容比較多,故分享出來,后面會詳細介紹數據類型的文章,歡迎關注。實現一個函數,可以對中的種主要的數據類型包括進行值復制。 感覺這個題目涉及的基礎知識內容比較多,故分享出來,后面會詳細介紹數據類型的文章,歡迎關注。 實現一個函數clone,可以對JavaScript中的5種主要的數據類型(包括Number、String、Object、Array、Boolean)...
摘要:函數柯里化在函數式編程中,函數是一等公民。函數柯里化的主要作用和特點就是參數復用提前返回和延遲執行??赡茉趯嶋H應用場景中,很少使用函數柯里化的解決方案,但是了解認識函數柯里化對自身的提升還是有幫助的。 最近在整理面試資源的時候,發現一道有意思的題目,所以就記錄下來。 題目 如何實現 multi(2)(3)(4)=24? 首先來分析下這道題,實現一個 multi 函數并依次傳入參數執行,...
閱讀 1979·2019-08-30 15:54
閱讀 3606·2019-08-29 13:07
閱讀 3130·2019-08-29 12:39
閱讀 1795·2019-08-26 12:13
閱讀 1553·2019-08-23 18:31
閱讀 2166·2019-08-23 18:05
閱讀 1853·2019-08-23 18:00
閱讀 1051·2019-08-23 17:15