我試圖將我的代碼從ES5模塊遷移到ES6類。我當前的代碼(模塊,而不是類),如下所示:以上如何用ES6類模擬私人範圍?
var appleModule = (function() {
var yummy = true;
var publicEat = function() { }
var privateEat = function() { }
return { "eat": publicEat }
})();
讓我創造,我不暴露在我的環境中其他的JavaScript對象/範圍私有變量和方法。我喜歡。我想在ES6我們班現在這麼像這樣成爲重構的代碼:
exports class appleModule {
constructor {
this.yummy = true;
}
publicEat() {
}
privateEat() {
// How to make private?
}
}
但是,是不是讓私有變量和函數與這個新的基於類的語法的好方法。新建議是否使用exports
與之前的模塊模式(返回公共成員的封閉對象)?如果不是,我如何像第一個例子那樣模擬私人範圍(希望沒有下劃線)?