Sobes.tech

Frontend

Как работи затваряне (closure) в JavaScript? Обяснете с пример за променливата index и функцията run във вашето решение.

Middle
201

Обяснете как Promise.all очаква да завършат всички заявки във вашето решение с рекурсия. Защо текущата реализация може да върне непълен резултат?

Middle
178

Разкажете повече за проекта в Цифриум: за кои модули отговаряха, как беше организирана функцията — къде бяха разположени endpoints, модели, бизнес логика, абонаменти?

Middle
175

Използвали ли сте FSD (Feature-Sliced Design) в проект? Как писахте samples и подписки за събития в Effector при използване на FSD?

Middle
161

Как разбирате избора на архитектура? Как разграничавате плюсовете и минусите между различните подходи?

Middle
156

/** * Изпълнете функцията, която ще изпълни обратно повикване с данните * и ще върне масив от отговори Response[]. * Решението трябва да изпълнява всички заявки паралелно * но не повече от [limit] заявки могат да се изпълняват едновременно. * Целта е да се минимизира общото време за изпълнение. */ 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[]> { // НАЧАЛО НА РЕШЕНИЕТО ТУК 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; // обработка ошибки } index++; run(); }; const startPack = Array.from({ length: limit }, run); await Promise.all(startPack); return result; }

Middle
151

Как работи Array.from? Какви аргументи приема?

Middle
150

Оптимизация на сборката: в какво се състоеше? Какви други подходи знаете за оптимизация на размера на пакета?

Middle
145

Какво е code splitting и как работи?

Middle
134

Разкажете за себе си и своя професионален опит

Middle
123