Встречается на собеседованиях • сегодня

Что будет при повторном написании require в CommonJS

При повторном вызове require с тем же модулем в CommonJS модуль не загружается заново. Вместо этого возвращается кэшированная версия модуля из require.cache. Это обеспечивает однократное выполнение кода модуля и одинаковый экземпляр для всех импортов.

Пример:

js
// module.js
console.log('Module loaded');
module.exports = { value: 42 };

// main.js
const first = require('./module');  // Выведет "Module loaded"
const second = require('./module');  // Ничего не выведет
console.log(first === second);       // true

Можно удалить кэш через delete require.cache[require.resolve('./module')], чтобы загрузить модуль заново.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы