2016-11-14 41 views
2

在ES6中,人們可以在模塊中導出class或按照常規導出函數。其中一個更好嗎?在JavaScript中使用模塊或類更好嗎?

我的雖然是它的,如果你想要一個更實用的外觀和感覺去出口功能,更多的OOP方法將導出一個類。

+0

像往常一樣,答案是「這取決於」。 –

+0

這不是Stack Software Engineering的問題嗎? –

回答

3

ES6中類的要點是能夠通過調用構造函數來創建對象(實例),並使這些對象具有對這些屬性進行操作的屬性和方法。因此,如果你正在創建一個打算創建具有方法和屬性的新對象的模塊,那麼通過一切手段公開一個構造函數或工廠函數,可以調用它來創建所需的對象類型。但是,如果你想要從模塊中共享一些函數,每個函數都可以被自己使用,那麼真的沒有理由使用ES6類,因爲導出一個具有多個函數作爲屬性的普通對象是完全可以接受的只是分享一些可以獨立調用的函數。

所以,答案是它取決於你想要從模塊中分享什麼。當然,你也可以用一堆靜態方法導出一個類,但是與僅僅導出一個帶有函數作爲屬性的普通對象相比,它沒有什麼特別的優勢,所以沒有什麼特別的理由可以使用ES6類除了模塊內的語法首選項外)。

相關問題