Sobes.tech

Frontend

/** * La función 'asyncAuth(callback)' recibe un callback, en el que puede * pasarse un error (como primer argumento) y datos * del backend (como segundo argumento). * asyncAuth((error, data) => {}); * * Debes implementar la función 'auth()', * que llama a 'asyncAuth()', pero devuelve una Promesa. * * @returns {Promise} */ function auth() { return new Promise((resolve, reject) => { asyncAuth((error, data) => { if (error) { reject(error) } else { resolve(data) } }); }) } /** * La función 'tryAuth()' usa 'auth()' y, en caso de error, * realiza N intentos adicionales. * Si todos los intentos fallan, devuelve el último error. * * @returns {Promise} */ function tryAuth(n) { return new Promise((resolve, reject) => { function attempt(attemptsLeft) { auth().then(resolve).catch((error) => { if (attemptsLeft <= 0) { // Se acabaron los intentos — lanzamos el último error reject(error); } else { // Aún quedan intentos — llamamos recursivamente con n - 1 attempt(attemptsLeft - 1); } }); } attempt(n); }); }

Middle+
Яндекс
155

¿Conoces el atributo SameSite en las cookies? ¿Cuáles son sus valores y en qué se diferencian?

Middle
Банк ПСБ
154

¿Qué tipos de Subject existen en RxJS?

Middle+
Т-БанкТ-Банк
154

Cuéntame más sobre tu experiencia con Feature-Sliced Design (FSD): ¿qué capas implementaste, fue conveniente o no, qué problemas surgieron?

Middle
thesis
154

¿Cómo funciona la sintaxis async/await en JavaScript y cuáles son sus ventajas sobre la sintaxis tradicional basada en promesas?

Middle+
AndersenAndersen
154

¿En qué se diferencian los hooks useEffect y useLayoutEffect?

Middle
ОТП БанкОТП Банк
154

Cuéntame sobre los enfoques arquitectónicos: FSD, monolito modular. ¿Qué arquitectura elegir para un MVP pequeño?

Middle
Мыс
154

¿Por qué Vue 3 abandonó los mixins?

Middle
КейСофт
153

¿Alguna vez has tenido que trabajar con CI/CD, configurar algo?

Middle+
wb
153

¿Es decir, ibas a él, describían los contratos de alguna manera?

Middle
Navio
153

¿Qué tan familiarizado estás con trabajar con CSS? ¿Conoces Grid Layout?

Middle
Тензор
153

¿Qué sucede cuando useEffect tiene dos dependencias y una de ellas cambia?

Middle+
Сбертех
153

¿Qué tipos de input existen?

Middle
Ростелеком
153

¿Por qué React es una biblioteca y no un marco de trabajo?

Middle
X-Notes
153

¿En qué se evaluaron las tareas: en puntos de historia o por tiempo?

Middle+
EvercodeLab
152

¿Puede ocurrir que dos valores diferentes tengan el mismo hash (colisión)? ¿Cómo se resuelve esto?

Middle+
Ifellow
152

const X = { a: 1, b: 2, c: 3, d: 4 } function getProperty<T>(obj: T, key: keyof T) { // Task: type the function return obj[key] } getProperty(X, 'a') // no error getProperty(X, 'e') // error: key 'e' is not a key of object X getProperty({ name: 'Sergey' }, 'name') // no error getProperty(1, 1) // Error. The first argument must be an object (not a function or primitive)

Middle+
IT OneIT One
152

¿Qué es Saga y Transactional Outbox? ¿Por qué son necesarias las transacciones distribuidas?

Senior
Позитив Технолоджис
152

Cuéntame sobre tu último lugar de trabajo: ¿cuáles eran tus tareas, cuál era tu área de responsabilidad, qué dificultades enfrentaste y qué resultados puedes destacar?

Middle
Куаргет
152

¿Qué es git cherry-pick y cómo funciona?

Middle
Программный код
152
/298