Sobes.tech

Frontend

Aus diesen Tickets lässt sich eine einzige, ununterbrochene Route erstellen. Es gibt keine Schleifen oder Wiederholungen in der Route. Du musst ein Programm schreiben, das diese gleichen Ticket-Objekte in der Reihenfolge der Route zurückgibt. ```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' }, ])); ```

263

Mussten Sie sich jemals um die Sicherheit der Anwendung, des Codes oder des Dienstes kümmern?

254

Haben Sie die Last auf dem System in RPS definiert? Welche Menge? Haben Sie Erfahrung im Durchlaufen technischer Phasen im Live-Coding-Format?

253

Unsere Chat-Anwendung sollte die neuen Nachrichten, die vom Server kommen, so schnell wie möglich anzeigen. Die Nachricht hat folgendes Format: interface Message { id: number text: string } Die ID der ersten Nachricht ist 1, und die ID jeder folgenden Nachricht ist um 1 größer als die der vorherigen. Wir müssen die Nachrichten in der richtigen Reihenfolge anzeigen, aber der Server garantiert nicht die richtige Reihenfolge der Nachrichten, die an unsere Anwendung gesendet werden. Zeitplan: // (kommt) [Telefon] // (zeichnen) . 1 2 3 . . 4 5 6 7 8 Um die Nachrichten anzuzeigen, verwenden Sie die Funktion render: render(message)

221

Erzähle mir von deiner Erfahrung mit Node.js anhand eines Projekts, was hast du genau darin entwickelt?

191

/** * Es ist notwendig, eine asynchrone Funktion zu schreiben, * die die angegebene Anzahl von Millisekunden "schläft", * und dann erfolgreich endet */

176

Allgemeines Verständnis von JavaScript: Parameterübergabe, Asynchronität, Prototypen, Fehlerbehandlung

175

// Es ist notwendig, die Lösung des Problems bei zwei Diensten zu überprüfen, indem man aufruft: // 1. checkResult(url1, solution) // 2. checkResult(url2, solution) // // checkResult: (url: string, solution: string | number) => Promise<boolean>; // // - Wenn beide Anfragen true zurückgeben - in console.log() success ausgeben // - Wenn eine false zurückgibt - in console.log() fail ausgeben // - Wenn eine nicht antwortet - in console.log() error ausgeben // - Wenn eine länger als 1 Sekunde antwortet - in console.log() timeout ausgeben

167

Was die Rollen betrifft – möchtest du in Richtung Management oder technischen Bereich gehen?

162

Berichten Sie über Ihre Arbeitserfahrung bei Atvint: Projekte, Verantwortlichkeiten, Team, Prozesse.

161

/** * Gegeben ist ein Array von Punkten mit ganzzahligen Koordinaten (x, y). * Bestimmen Sie, ob es eine vertikale Linie gibt, * die die Punkte in zwei symmetrische Mengen bezüglich dieser Linie teilt. * Hinweis: Zur Bequemlichkeit kann der Punkt nicht als Array [x, y], sondern als Objekt {x, y} dargestellt werden. */ 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) { // Code hier }

155

/** * Die Funktion `asyncAuth(callback)` akzeptiert einen Callback, in den * ein Fehler (als erstes Argument) und Daten * vom Backend (als zweites Argument) übergeben werden können. * asyncAuth((error, data) => {}); * * Sie müssen die Funktion `auth()` implementieren, * die `asyncAuth()` aufruft, aber ein Promise zurückgibt. * * @returns {Promise} */ export function auth() { // asyncAuth((error, data) => {}); }

152

/** * Gegeben ist ein Array. Es ist notwendig, ungerade Zahlen nach Wert aufsteigend zu sortieren, * und gerade Zahlen an ihren ursprünglichen Stellen zu belassen * / export function oddSort(numbers) { // dein Code hier } 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 ist notwendig, die Lösung des Problems auf zwei Diensten zu überprüfen, indem man aufruft: // 1. checkResult(url1, solution) // 2. checkResult(url2, solution) // // checkResult: (url: string, solution: string | number) => Promise<boolean>; // // - Wenn beide Anfragen true zurückgeben, in der Konsole success ausgeben // - Wenn eine false zurückgibt, in der Konsole fail ausgeben // - Wenn eine nicht antwortet, in der Konsole error ausgeben // - Wenn eine länger als 1 Sekunde antwortet, in der Konsole timeout ausgeben 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); }

151

Es sind drei Codeabschnitte gegeben. Schreiben Sie das Ergebnis jedes 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); // ??

150

/** * Die Funktion `tryAuth()` verwendet `auth()` und bei einem Fehler, * führt sie N zusätzliche Versuche durch. * Wenn alle Versuche fehlschlagen, wirft sie den letzten Fehler. * * @returns {Promise} */ export function tryAuth(n) { }

149

// Es ist notwendig, die Methode groupBy zu implementieren, die die Standardmethoden von Arrays erweitert. // Die Methode sollte eine gruppierte Version des Arrays zurückgeben – ein Objekt, // bei dem jeder Schlüssel das Ergebnis der Ausführung der Funktion fn(arr[i]) ist, // und jeder Wert ein Array ist, das alle Elemente des ursprünglichen Arrays mit diesem Schlüssel enthält.

147

Wie war Ihre Zusammenarbeit im letzten Projekt aufgebaut? Über Agile oder auf eine andere Weise?

141

Auf welche eigenständige Entscheidung oder Verbesserung bist du stolz? Vielleicht eine sehr schwierige oder wichtige Aufgabe?

138
/2