როგორ მუშაობს კლოზი (closure) JavaScript-ში? ახსენით თქვენი გადაწყვეტილების მაგალითზე ცვლადი index და ფუნქცია run-ის გამოყენებით.
Frontend
გთხოვთ, ახსნათ, როგორ ელოდება Promise.all თქვენს რეცურსიულ გადაწყვეტილებაში ყველა მოთხოვნის შესრულებას. რატომ შეიძლება მიმდინარე რეალიზაცია დაბრუნდეს არასრულფასოვანი შედეგი?
Цифრიუმის პროექტის შესახებ უფრო დეტალურად ისაუბრეთ: რომელ მოდულებზე იყვნენ პასუხისმგებელი, როგორ იყო მოწყობილი ფუნქცია — სად მდებარეობდნენ endpoints-ები, მოდელები, ბიზნეს-ლოგიკა, გამოწვევები?
პროექტში FSD (Feature-Sliced Design) გამოიყენეთ? როგორ დაწერეთ samples და subscriptions on events in Effector при использовании FSD?
როგორ ხვდებით არქიტექტურის არჩევანს? როგორ გამოყოფთ სხვადასხვა მიდგომების უპირატესობებს და ნაკლოვანებებს?
/** * შეასრულეთ ფუნქცია, რომელიც შეასრულებს callback-ს მონაცემებთან * და დააბრუნებს პასუხების 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; }
როგორ მუშაობს Array.from? რა არგუმენტებს იღებს?
შენახვის ოპტიმიზაცია: რა იყო ის? რა სხვა მიდგომებს იცნობთ ბანდლის ზომის ოპტიმიზაციისთვის?
რა არის code splitting და როგორ მუშაობს?
გვითხარით საკუთარ შესახებ და სამუშაო გამოცდილებაზე