Даже если код работает так же, и require
вызовы кэшируются.В вашем случае нет необходимости в таком дополнительном вызове функции для каждого нового экземпляра, поэтому будет быстрее (не в данном случае это имеет значение) сделать следующее:
const langs = require('./config/lang.json');
class MyClass {
constructor(lang) {
const list = langs[lang];
}
}
Еще одна вещь, на которую следует обратить внимание,в том, что require
является синхронным, поэтому, если ваш JSON особенно велик, при первом запуске MyClass
цикл событий будет заблокирован.Используя его в самом начале, он, вероятно, загрузится до того, как сервер (или что бы вы ни делали) запустится, поэтому не будет никаких проблем с require
, занимающим некоторое время.
Итак, да,по моему мнению, require
вызовы должны быть наверху, если вы не знаете, что делаете, или загружаете динамическую зависимость.