原型繼承是一種強大的JavaScript 範例,但管理大型應用程式可能具有挑戰性。考慮一個具有大量函數的輪播類別:
為了更好的程式碼組織而進行重構可能涉及將函數分組為子物件:
但是,此更改引入了一個問題:「這些函數中的this" 關鍵字不再引用輪播實例。
維護「this」上下文至關重要,特別是在類別繼承父類別的場景中。繼承類別中的重寫函數必須保留正確的「this」行為。
一種方法是將Controls 定義為單獨的類別並儲存引用到輪播實例:
雖然此解決方案解決了“this”問題,但它防止了控制實現的重寫。
更靈活方法涉及依賴注入:
在這種情況下,輪播類別可以添加多個控制器,容納多組功能並允許輕鬆覆蓋。
以上是如何組織基於原型的 JavaScript 程式碼,同時保留物件參考和繼承?的詳細內容。更多資訊請關注PHP中文網其他相關文章!