Kaip veikia uždarymas (closure) JavaScript? Paaiškinkite su pavyzdžiu apie kintamąjį index ir funkciją run jūsų sprendime.
Frontend
Paaiškinkite, kaip Promise.all laukia, kol įvykdys visus užklausimus jūsų rekursijos sprendime. Kodėl dabartinė įgyvendinimo gali grąžinti nepilną rezultatą?
Papaskinkite daugiau apie projektą Цифриум: kuriems moduliams jie buvo atsakingi, kaip buvo suorganizuota funkcija — kur buvo endpointai, modeliai, verslo logika, prenumeratos?
Ar naudojote FSD (Feature-Sliced Design) projekte? Kaip rašėte samples ir subscriptions į įvykius Effector naudojant FSD?
Kaip suprantate architektūros pasirinkimą? Kaip išskiriate skirtingų požiūrių privalumus ir trūkumus?
Kaip veikia Array.from? Ką priima kaip argumentus?
Sukūrimo optimizavimas: kuo jis buvo? Kokius kitus požiūrius žinote, kad optimizuotumėte paketo dydį?
/** * Įgyvendinkite funkciją, kuri vykdys atgalinį kvietimą su duomenimis * ir grąžins Response[] atsakymų masyvą. * Sprendimas turėtų vykdyti visus užklausimus lygiagrečiai * bet ne daugiau kaip [limit] užklausimų gali būti vykdomi vienu metu. * Tikslas yra sumažinti bendrą vykdymo laiką. */ 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[]> { // Sprendimo pradžia čia 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; // klaidos valdymas } index++; run(); }; const startPack = Array.from({ length: limit }, run); await Promise.all(startPack); return result; }
Kas yra code splitting ir kaip jis veikia?
Papaskinkite apie save ir savo darbo patirtį