> Как реализовать функцию auth через колбек в JavaScript (JavaScript)

Уровень: senior · Роль: frontend · Категория: Технические вопросы

Компании: Яндекс

Стек: JavaScript

> Пример ответа

Реализация аутентификации через колбек в JavaScript - это классический подход, основанный на передаче функции, которая будет вызвана после завершения асинхронной операции (например, запроса к серверу). Вот пример:

JAVASCRIPT
function authenticate(username, password, callback) {
// Имитация асинхронного запроса к серверу
setTimeout(() => {
if (username === 'admin' && password === '12345') {
callback(null, { id: 1, name: 'Admin' }); // успех
} else {
callback(new Error('Неверные учетные данные'), null); // ошибка
}
}, 1000);
}
// Использование
authenticate('admin', '12345', (err, user) => {
if (err) {
console.error('Ошибка аутентификации:', err.message);
return;
}
console.log('Пользователь авторизован:', user);
});

Ключевые моменты:

  • Колбек принимает два параметра: первый - ошибка (если есть), второй - результат.

  • Функция authenticate не возвращает значение напрямую, а вызывает колбек по завершении.

  • Этот паттерн был популярен до появления промисов и async/await, но до сих пор встречается в старом коде или библиотеках.

Для обработки ошибок и результатов используйте соглашение "error-first" (первый аргумент - ошибка, второй - данные).

> ГОТОВЫ К СЛЕДУЮЩЕМУ СОБЕСЕДОВАНИЮ?

Запустите тренировочную сессию с ИИ и получите детальную обратную связь, чтобы увереннее проходить реальные интервью