Проверяет понимание поведения цепочки промисов при возврате null из обработчика .then().
В JavaScript промисы позволяют строить асинхронные цепочки. Когда вы возвращаете значение из обработчика .then(), это значение становится результатом нового промиса, который продолжает цепочку. Если вы вернёте null, промис будет разрешён со значением null. Это абсолютно допустимо и не вызывает ошибок. Цепочка продолжит выполняться, и следующий .then() получит null в качестве аргумента.
Promise.resolve(42)
.then(value => {
console.log(value); // 42
return null;
})
.then(value => {
console.log(value); // null
return 'done';
})
.then(value => {
console.log(value); // 'done'
});Как видно, цепочка не прерывается. Однако важно помнить, что если вы попытаетесь обратиться к свойствам null (например, value.someProperty), это вызовет TypeError. Поэтому в реальном коде стоит проверять значение перед использованием.
Возврат null может быть полезен, когда вы хотите явно указать, что результат отсутствует, но при этом продолжить обработку. Например, при фильтрации данных или условной логике в цепочке промисов.
Возврат null из .then() — это нормальное поведение, которое не ломает цепочку. Используйте его осознанно, добавляя проверки на null, чтобы избежать ошибок при обращении к свойствам.
Frontend developer
Ментор по Frontend
Полное сопровождение до оффера — без дорогих курсов, с оплатой после трудоустройства
Записаться на консультацию