Hogyan működik egy closure JavaScriptben? Magyarázd el a példában szereplő index változót és a run függvényt a megoldásodban.
Frontend
Magyarázza el, hogyan várja a Promise.all, hogy minden kérés befejeződjön az ön rekurzív megoldásában. Miért adhat vissza a jelenlegi megvalósítás hiányos eredményt?
Meséljen többet a Цифриум projektjéről: mely modulokért voltak felelősek, hogyan volt felépítve a funkció — hol helyezkedtek el az endpointok, modellek, üzleti logika, előfizetések?
Használtad az FSD-t (Feature-Sliced Design) egy projektben? Hogyan írtad a mintákat és az eseményfeliratkozásokat az Effectorben az FSD használata során?
Hogyan érted az architektúra kiválasztását? Hogyan különbözteted meg a különböző megközelítések előnyeit és hátrányait?
/** * Valósítsa meg azt a függvényt, amely végrehajt egy callback-et az adatokkal * és egy Response[] válaszokat tartalmazó tömböt ad vissza. * A megoldásnak párhuzamosan kell végrehajtania az összes kérést * de nem lehet több, mint [limit] kérés egyszerre. * A cél az összes végrehajtási idő minimalizálása. */ type Props<RequestData, Response> = { callback: (args: RequestData) => Promise<Response>; data: Array<RequestData>; limit: number; }; export async function runWithLimit<RequestData, Response>({ callback, data, limit, }: Props<RequestData, Response>): Promise<Response[]> { // MEGOLDÁS KEZDŐPONTJA if (limit < 1 || data.length === 0) { return Promise.resolve([]); } if (limit >= data.length) { return Promise.all(data.map(callback)); } const result: Response[] = new Array(data.length); let index = 0; const run = async () => { if (index >= data.length) return; const elem = data[index]; try { result[index] = await callback(elem); } catch (err) { result[index] = (err) as Response; // hiba kezelése } index++; run(); }; const startPack = Array.from({ length: limit }, run); await Promise.all(startPack); return result; }
Hogyan működik az Array.from? Mit fogad el argumentumként?
Build optimalizálás: miben állt? Milyen más megközelítéseket ismer a csomag méretének optimalizálására?
Mi az a code splitting és hogyan működik?
Meséljen magáról és szakmai tapasztalatáról