Frontend
Haben Sie jemals mit einem Legacy gearbeitet, an Legacy-Projekten gearbeitet, etwas refaktoriert oder die Architektur geändert?
Bei Ihrer vorherigen Arbeit haben Sie gesagt, dass der Frontend-Teil relativ klein ist, aber dass 6 Frontend-Entwickler daran beteiligt sind. Woher stammt das Team aus genau 6 Personen und wie steht es im Verhältnis zum gesamten Frontend-Team des Unternehmens?
Was passiert mit dem Aufrufstapel und der Aufgabenwarteschlange bei dieser unendlichen Rekursion?
Weißt du, was gRPC (Google Remote Procedure Call) ist?
Welcher CSS-Selektor hat die höchste Spezifität: Tag, Klasse, ID?
Neben der Tatsache, dass der Konstruktor nicht aufgeblasen wird, was sind weitere Gründe, inject anstelle des Konstruktors zu verwenden?
Mussten Sie jemals Tests schreiben?
Was ist Barrierefreiheit im Web? Welche Attribute und HTML-Elemente werden verwendet, um Barrierefreiheit zu gewährleisten?
Schreiben Sie eine Funktion, die das n-te Glied einer Zahlenfolge berechnet, wobei das n-te Glied die Summe der beiden vorherigen ist, das erste Glied ist 3, das zweite ist 2 (Folge: 3, 2, 5, 7, 12, ...).
Haben Sie FSD (Feature-Sliced Design) in einem Projekt verwendet? Wie haben Sie Samples und Event-Abonnements in Effector beim Einsatz von FSD geschrieben?
Haben Sie Erfahrung mit Node.js (Frameworks)?
Im Lebenslauf steht, dass du mit Next.js entwickelt hast — ist das richtig? War es Next.js mit App Router oder Pages Router?
Wo verläuft die Grenze zwischen Feature und Entity? Wann platzieren Sie die Geschäftslogik?
Warum haben Sie sich entschieden, Proxy anstelle von Object.defineProperty zu verwenden?
Was machst du normalerweise, wenn du das Gefühl hast, dass die Entwicklung läuft und du ein bisschen hinter den Fristen bist? Es gibt ein Veröffentlichungsdatum, aber du verstehst, dass du die Aufgabe nicht rechtzeitig abschließen wirst.
Wie ist Ihr Veröffentlichungsprozess organisiert?
Was ist der Nullish Coalescing Operator (??) und wie unterscheidet er sich vom normalen Operator ||?
Wofür ist das Schlüsselwort satisfies in TypeScript?
Im Prototyp des Verkaufnetzwerks für Werbung ist der Verkauf von Werbeflächen wie folgt organisiert: Käufer nennen im Voraus ihren Preis, und für jeden Werbeplatz antworten sie, ob sie ihn kaufen möchten oder nicht. Es ist notwendig, eine Funktion zu implementieren, die vor dem Verkauf eines Werbeplatzes die Zustimmung oder Ablehnung der Käufer mit dem höchsten Gebot abwartet und dann den Werbeplatz an den Käufer mit dem höchsten Gebot unter denjenigen verkauft, die zugestimmt haben. Die Antwort der Funktion sollte so schnell wie möglich erfolgen. Sie sollte den Index des Käufers zurückgeben. Beispiele: Käufer bieten Preise 1, 5, 10 Der Käufer mit Angebot 10 hat abgelehnt Der Käufer mit Angebot 1 hat zugestimmt // Wir warten noch, da der Käufer mit Angebot 5 noch antworten könnte Der Käufer mit Angebot 5 hat zugestimmt // Wir wählen den Käufer mit Angebot 5 ------------ Käufer bieten Preise 1, 5, 10 Der Käufer mit Angebot 10 hat abgelehnt Der Käufer mit Angebot 5 hat zugestimmt // Wir warten nicht auf die Antwort des Käufers mit Angebot 1 - er wird definitiv nicht ausgewählt ------------ Käufer bieten Preise 1, 2 Der Käufer mit Angebot 1 hat abgelehnt Der Käufer mit Angebot 2 hat abgelehnt // Wir wählen keinen Käufer type Buyer = { price: number, accepts: () => Promise<boolean>, } async function bestBuyer(buyers) { const sorted = buyers.map((buyer, index) => ({buyer, index})) .sort((a, b) => a.buyer.price - b.buyer.price); const promise = sorted.map(({buyer}) => buyer.accepts()); for (let i = 0; i < sorted.length; i++) { const accepted = await promise[i]; if (accepted) { return sorted[i].index; } } if (await buyers[0].accepts()) { return 0; } return -1; }
Wie funktioniert this in normalen Funktionen und in Pfeilfunktionen? Was ist der Unterschied?