Выбор ответа Junior Модули и npm обновлено
exports = {} в CommonJS
Вопрос
Что вернёт require("./d.cjs")?
// d.cjs
exports = { z: 1 };
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Правильный ответ: {}. exports это локальная переменная, которая изначально ссылается на module.exports.
Варианты ответа
{}правильный ответ{ z: 1 }undefined- Ошибку: exports нельзя переприсваивать
Разбор
exports это локальная переменная, которая изначально ссылается на module.exports. Присваивание меняет только переменную, а require возвращает module.exports, то есть исходный пустой объект.
{ z: 1 }получилось бы сmodule.exports = { z: 1 }.undefinedневерно:module.exportsпо умолчанию{}.- Ошибки нет: это обычная переменная.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.