Sobes.tech

Frontend

De estos billetes se puede construir una única ruta continua. No hay bucles ni repeticiones en la ruta. Necesitas escribir un programa que devuelva estos mismos objetos de billetes en el orden de la ruta. ```javascript function getRoute(tickets = []) { const cities = new Map(); for (const ticket of tickets) { cities.set(ticket.from, ticket); } const result = []; let currentCity = startcity; while (cities.has(currentCity)) { const next = cities.get(currentCity); result.push(next); currentCity = next.to; } return result; } console.clear() console.log(getRoute([ { from: 'London', to: 'Moscow' }, { from: 'NY', to: 'London' }, { from: 'Moscow', to: 'Spb' }, ])); ```

271

¿ Ha definido la carga en el sistema en RPS? ¿Cuál fue la cantidad? ¿Tiene experiencia en pasar etapas técnicas en formato de codificación en vivo?

259

¿Alguna vez has tenido que ocuparte de la seguridad de la aplicación, el código o el servicio?

254

Nuestra aplicación de chat debe mostrar los nuevos mensajes que llegan desde el servidor lo más rápido posible. El mensaje tiene el siguiente formato: interface Message { id: number text: string } El id del primer mensaje es 1, y el id de cada mensaje siguiente es 1 mayor que el del anterior. Necesitamos mostrar los mensajes en el orden correcto, pero el servidor no garantiza el orden correcto de los mensajes enviados a nuestra aplicación. Línea de tiempo: // (llega) [teléfono] // (dibujamos) . 1 2 3 . . 4 5 6 7 8 Para mostrar los mensajes, se debe usar la función render: render(message)

228

Cuéntame sobre tu experiencia con Node.js en un ejemplo de algún proyecto, ¿qué exactamente desarrollaste en él?

197

/** * Es necesario escribir una función asíncrona, * que "duerma" la cantidad de milisegundos especificada, * y luego termine con éxito */

184

Comprensión general de JavaScript: paso de parámetros, asincronía, prototipos, manejo de errores

175

// Es necesario verificar la solución del problema en dos servicios, llamando: // 1. checkResult(url1, solution) // 2. checkResult(url2, solution) // // checkResult: (url: string, solution: string | number) => Promise<boolean>; // // - Si ambas solicitudes devuelven true - mostrar en console.log() success // - Si alguna devuelve false - mostrar en console.log() fail // - Si alguna no responde - mostrar en console.log() error // - Si alguna responde más de 1 segundo - mostrar en console.log() timeout

171

Cuéntanos sobre tu experiencia laboral en Atvint: proyectos, responsabilidades, equipo, procesos.

163

Se dan tres secciones de código. Es necesario escribir el resultado de cada console.log. var n = 1; function f(n) { n = 3; } f(n); console.log(n); // ?? // ------------------ var obj = { a: 1 }; function f1(o) { o.a = 5; } f1(obj); console.log(obj); // ?? // ------------------ var obj = { a: 1 }; function f2(o) { o = { hello: 1 }; } f2(obj); console.log(obj); // ??

160

/** * Dado un array. Es necesario ordenar los números impares por valor en orden ascendente, * y dejar los pares en sus lugares originales * / export function oddSort(numbers) { // tu código aquí } console.log(oddSort([2, 3, 7, 4, 6, 1, 5, 8, 9])); // [2, 1, 3, 4, 6, 5, 7, 8, 9] console.log(oddSort([2, 4, 6, 8])); // [2, 4, 6, 8] console.log(oddSort([3, 7, 1, 5, 9])); // [1, 3, 5, 7, 9] // Es necesario verificar la solución del problema en dos servicios, llamando a: // 1. checkResult(url1, solution) // 2. checkResult(url2, solution) // // checkResult: (url: string, solution: string | number) => Promise<boolean>; // // - Si ambas solicitudes devuelven true, imprimir en console.log() success // - Si alguna devuelve false, imprimir en console.log() fail // - Si alguna no responde, imprimir en console.log() error // - Si alguna responde en más de 1 segundo, imprimir en console.log() timeout import { checkResult } from '...'; export async function checkResults() { const solution = 'Any answer'; const url1 = 'yandex.ru'; const url2 = 'google.com'; checkResult(url1, solution); checkResult(url2, solution); }

159

// Es necesario implementar el método groupBy, que extiende los métodos estándar de los arrays. // El método debe devolver una versión agrupada del array, un objeto, // en el que cada clave sea el resultado de la ejecución de la función pasada fn(arr[i]), // y cada valor sea un array que contiene todos los elementos del array original con esa clave.

155

/** * Dado un array de puntos con coordenadas enteras (x, y). * Determina si existe una línea vertical, * que divide los puntos en dos conjuntos simétricos respecto a esa línea. * Nota: Para mayor comodidad, el punto puede representarse no como un array [x, y], sino como un objeto {x, y} */ isVertSym([[0, 0], [0, 0], [1, 1], [2, 2], [3, 1], [4, 0], [4, 0]]) // true isVertSym([[0, 0], [0, 0], [1, 1], [2, 2], [3, 1], [4, 0]]) // false isVertSym([]) // true isVertSym([[0, 0]]) // true isVertSym([[0, 0], [10, 0]]) // true isVertSym([[0, 0], [11, 1]]) // false isVertSym([[0, 0], [1, 0], [3, 0]]) // false function isVertSym(list) { // código aquí }

155

/** * La función `asyncAuth(callback)` acepta un callback, en el cual puede * ser pasada un error (como primer argumento) y datos * del backend (como segundo argumento). * asyncAuth((error, data) => {}); * * Necesitas implementar la función `auth()`, * que llama a `asyncAuth()`, pero devuelve una Promesa. * * @returns {Promise} */ export function auth() { // asyncAuth((error, data) => {}); }

154

/** * La función `tryAuth()` utiliza `auth()` y, en caso de error, * realiza N intentos adicionales. * Si todos los intentos fallan, lanza el último error. * * @returns {Promise} */ export function tryAuth(n) { }

149

¿Cómo fue la interacción en su último proyecto? ¿Fue mediante Agile o de alguna otra manera?

145

¿De qué decisión independiente o mejora estás orgulloso? ¿Quizás alguna tarea muy difícil o importante?

144
/2