Различия между созданием нового класса и использованием const экспорта
Настроить:
BabelJS (es2015, реакция, стадия-1)WebpackРеагировать / избыточноНовое в CommonJS и ES6. Я знаю разницу между экземпляром объекта и статическим контейнером методов, но я не уверен, как они ведут себя при разделении на модули. Поэтому мне интересно, каковы различия между возвратом экземпляра (действительно ли этот шаблон действителен?):
// StateParser.js
class StateParser {
constructor() {
}
method1() {
...
}
}
export default new StateParser()
и экспорт const методов:
// StateParser.js
let state = {
}
export const method1 = () => { ... }
Способ A: Будет ли новый экземпляр каждый раз, когда я импортирую?Метод Б: Одним из преимуществ является возможность использования деструктуризации объекта:
import { method1 } from '../utils/StateParser.js';
а затем использовать method1, как если бы он существовал локально?
Способ А. Является ли одним из преимуществ возможность инициализации состояния в конструкторе?
Так что, в принципе, я не уверен, когда использовать какие из них для моих служебных классов, и буду признателен за ваш вклад.