Сколько раз вызовется console.log(1) при импорте его как модуля в нескольких местах

«Сколько раз вызовется console.log(1) при импорте его как модуля в нескольких местах» — вопрос из категории JavaScript, который задают на 10% собеседований Frontend Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

При импорте модуля с console.log(1) он выполнится только один раз, независимо от количества импортов. Это связано с кешированием модулей в Node.js/ESM.

Пример:

// module.js
console.log(1);
export const foo = 'bar';

// file1.js
import { foo } from './module.js';

// file2.js
import { foo } from './module.js';

Даже при импорте в нескольких файлах, console.log(1) выполнится только один раз при первом импорте. Последующие импорты получат кешированную версию модуля.